AI(Artificial intelligence) 5

#if vs. #ifdef

1. #if는 if와 다르게 조건에 따라 소스코드를 삽입하거나 삭제하기 위해 사용되는 지시자이다. // #if는 #endif로 닫아줘야 한다. #include int main() { if(0) { // 일반 if조건은 괄호로 범위 지정 printf("실행되지는 않지만, 컴파일은됨 \n"); } #if 0 printf("컴파일 자체가 안되 \n"); #endif return 0; } 2. #if는 0이 아닐 경우에 실행된다. #include #define NUM -3 int main(void) { #if NUM printf("if: NUM is %d\n", NUM); #else printf("else: NUM is %d\n", NUM); #endif } // if: NUM is -3 3. #if 와 #if..

#1. C 언어 포인터

1. 포인터란? 메모리의 주소를 저장하는 공간이며 , 포인터 변수라고도 부른다. 값을 담고있는 게 아니라 메모리 주소를 담고 있는 변수이다. 변수 앞에 *를 붙이면서, 포인터를 만들어 준다. ex) int *ptr; int* ptr; 동일하다. 포인터를 선언한 후 주소 값 배정해야한다. & 뒤에 변수 이름을 적으면, 해당 변수 이름의 메모리 주소 값을 나타나게 된다. int A = 10; printf("%p \n", &A); //000000172CDDF7F3 2. 포인터 연산자 1) 주소연산자(&) : 주소 연산자는 변수의 이름 앞에 사용하여, 해당 변수의 주소값을 반환한다. #include int main(void) { char last_name [4] ={"kim", "jung", "lee", "ch..

#0. C언어 변수 선언 및 자료형

1. 자료형 unsigned란 부호가 없다는 뜻으로 -x ~ +x의 범위 대신 0 ~ +2x 범위를 의미한다. 2. 변수 선언 (지역, 전역 변수) 첫 문자는 반드시 영문자 또는 밑줄문자( _ )로 시작해야한다. 식별자는 대문자와 소문자를 구분한다. 예약어는 사용할 수 없다. 식별자는 중간에 공백이 있어서는 안된다. 식별자의 길이는 제한이 없다. 1) 배열 int num[100]; int 형 데이터가 들어갈 공간이 1000 ex) 초기값 주는 배열 int array[10]={4,1,7,64,3,18,9,2,1,33}; ex) 배열의 초기값을 지정해주면 배열의 길이 굳이 안적어도 된다. (컴파일러가 배열의 길이 정해준다.) int array[]={4,1,7,64,3,18,9,2,1,33}; int arra..

# 2. C언어 자주 쓰는 함수

1. strcpy, strncpy 함수 1) strcpy 함수 헤더파일 : 함수원형 : char* strcpy(char* dest, const char* origin); 함수의 이름은 str(=string), cpy(=copy) 문자열을 복사하는 함수이다. : origin에 있는 문자열 전체를 dest로 복사하는 함수이다. ex) char origin[] = 'HelloMonster"; char dest[100]; strcpy(dest, origin); 2) strncpy 함수 헤더파일 : 함수원형 : char* strncpy(char* dest, const char* origin, size_t n); str과 cpy 사이에 n은 number를 뜻한다. 따라서 str(=string), n(=number)..