전체 글 532

Linux 명령어

ls : 디렉토리에 무엇이 들어 있는지 보여주는 명령어 whoami : 자신을 확인하는 간단한 명령어 who am i : whoami보다 더 자세한 자신의 정보를 보여준다.(띄어쓰기 잘보세요) id : 주로 자신에 대한 uid나 gid에 대한 정보를 보여준다 group : 자신이 속해 있는 그룹이 어떤 것인지 보여준다 >>finger : 위의 4가지 보다 더욱 정확한 정보를 보여준다. pwd : 자신이 작업중인 디렉토리를 알려준다. cd NAME : NAME의 디렉토리로 이동한다. passwd : 자신의 password를 변경한다. chsh : 사용자의 사용환경을 변경한다. (쉘종류는 /etc/shells에 들어있다.) ex ) #chsh New shell[/bin/bash] : /bin/sh (쉘이름)..

[C언어] 예약어 typedef

> tepedef는 이미 사용하고 있는 자료형의 이름을 새롭게 지정할 때 사용하는 예약어이다. ex ) typedef int in typedef long lo ---------------- #define in int #define lo long 과 같은 의미를 가집니다. 하지만 이것에는 약간의 차이가 존재합니다. ex) #define PTR int * PTR ptr01, ptr02; 위와 같이 define을 통해서 int * 포인터 지정을 선언하면, 컴퓨터는 이렇게 받아 들입니다. int *ptr01, ptr02; > ptr01은 int 포인터 변수이고, ptr02는 int 변수로써 사용이 가능하게 됩니다. 이와 다르게 typedef를 사용하면 이렇게 됩니다. typedef int * PTR PTR pt..

[C언어] 유니온 union 열거형 enum

1. 유니온(union) 1) 선언과 사용방법에 있어서는 구조체와 동일하다. 2) 메모리 할당 방식에서 구조체와 차이가 있다. > 멤버중에서 가장 큰 자료형의 크기로 메모리가 할당 > 멤버 변수들이 동일한 기억공간에 중복되어 할당 3) 예약어 union을 사용한다, ex) union data{ char ch; int num; }; cf) struct data{ char ch; int num; }; 2. 열거형 1) 사용자가 필요에 의해서 만들어 사용하는 자료형 2) 예약어 enum을 사용 3) 열거형으로 선언된 변수는 집합에 포함되는 상수값만을 갖게된다. 4) 처음에 기술된 열거상수는 0 을가지고 차례로 1씩 증가한다, ex) enum exam_{a,b,c,d,e}; exam_ test; --------..

[c언어] c언어의 장점

1)전산 이론 및 실무 적용상에 절대적으로 필요한 제어 구조, 자료 구조 및 연산자를 충 분히 갖추고 있는 현대식 언어이다. 2)하향식 설계(top-down design), 구조적 프로그래밍(structured programming) 3)컴퓨터의 기능을 최대한도로 이용할 수 있는 효율적인 언어이기 때문에 프로그램을 간결하게 작성하여 신속하게 수행 할 수 있다. 4)시스템 간에 호환성이 매우 높다. 즉 어떤 시스템에서 사용되던 C프로그램을 수정없 이 또는 약간의 수정으로 다른 시스템에서도 실행시킬 수 있다. > 이식성이 뛰어 나다. 5)고급 프로그래밍 언어와 어셈블리의 장점을 취한 중간 수준의 시스템 프로그래밍 언어 이다. (UNIX, MS-DOS, DBASEⅢ+등을 작성) 6) 문법이 간결하다. ----..

[C언어] bit 연산 , 비트 연산

bit를 연산하는 법에서 알아봅시다. 제 설명이 많이 부족합니다. 처음 부분만 이해하셧다면 쉽게 bit연산을 할수 있습니다. 하지만 저의 설명에 처음 부분은 존재하지 않는 것 같내요 ㅠ bit는 컴퓨터가 사용하는 숫자로 2진수 0과 1로 나타 내는 것 입니다. 프로그램밍에서의 표현은 변수숫자를 넣을 때 0x를 써주어 16진수로써 사용합니다. 16 진수 = 0 1 2 3 4 5 6 7 8 9 A B C D E F ex ) 0xffffffff = 1111 1111 1111 1111 1111 1111 1111 1111 0x0000000e = 0000 0000 0000 0000 0000 0000 0000 1110 1. and연산자 '&' '&' 연산자는 다음과 같은 실행을 한다. x y x & y 1 0 0 0..

[C언어] 함수포인터

1. 선언 및 사용 1) 선언 return type ( * function name ) ( variable type1, variable type2, ... ); ex) double (*fun) (double,double); > fun이라는 이름을 가지고, double변수를 두 개를 가질 수 있는 함수 포인터 2) 사용 function pointer = function; ex) #include int puls(int x, int y) { return x+y; } int (*fun)(int x, int y); main() { fun = plus; printf("%d\n",fun(2,3)); } 2. void type변수 다루기 1) 변수 타입을 변경하여 다루기 #include int igreater(void..

[C언어]동적할당 ( malloc, realloc, calloc)

1. 메모리할당 우리가 흔히쓰는 선언은 정적 선언이라고 합니다. 즉, 메모리의 총량이 정해져 있다는 것입니다. 정적 선언으로 인해 지정된 변수는 Stack 이라는 메모리공간에 저장됩니다. ※ 참고 : 블럭이 시작 될 때도 stack 에 메모리를 할당합니다. 이를 전문용어로 Activation Recorde라고 합니다. 이에 비해 아래에 나올 동적 선언으로 인해 지정된 변수는 Heap 이라는 메모리에 저장됩니다. 그럼 이젠 동적 할당을 알아봅시다. 2. 동적 할당 동적 할당은 말 그대로 용량이 정해져 있지 않고 변화하는 것을 이야기 합니다. 동적 할당은 다음의 경우에 사용합니다. 1) 필요한 크기를 미리 알수 없는 경우 2) 실제로 필요성 여부를 모르는 메모리를 부여할 때 3) stack size에 한계가..

[C언어]기억클래스류 /static extern auto register

1. 기억 클래스류 1) 변수가 어떤 형태의 메모리에 할당될지 결정하는 것 2) 문법 [기억클래스류] 자료형 변수명 (=초기값); 3) 기억클래스류를 지정하는 이유 ⓐ 변수를 사용할 수 있는 통용범위를 결정 ⓑ 기억장소의 생성과 소멸시기의 차이를 발생시켜 변수의 유효기간을 달리할 수 있다. 4) 종류 auto, register, static, extern 2. 지역변수 1) 유효기간 : 함수나 블록이 실행할 때 변수가 생성 함수나 블록이 끝나면 변수가 소멸 2) 초기 값을 부여하지 않으면 쓰레기 값을 가진다. 3. 전역변수 1) 함수 밖에 선언되는 변수 2) 범위 : 선언 된 부분의 아래쪽에 위치한 모든 함수 프로그램이 실행될 때 변수가 생성되고, 프로그램이 종료될 때 변수가 소멸된다. 3) 특징 : 전..