본문 바로가기

C언어

(22)
Chapter 6. scanf()와 fgets() Chapter 6. scanf()와fgets() scanf()는 숫자를 받아들일 때에만 fgets()는 문자열을 받아들일 때에만 사용한다. intscanf(constchar *format, ...); 첫번째 인자는 문자열 포인터이고 두번째 인자는"가변 인자" 이다. 6_1.c #include #include main() { char *name; name = (char *)malloc(sizeof(char) * 20); printf("Input your name : "); scanf("%s", name); puts(name); } gcc -o 6_1 6_1.c ./6_1 Input your name : Park Nara Park 다른 문자열도 출력하고 싶다면 char 변수를 각각 선언하고 scanf("%s..
Chapter 2. 1차원 배열과 포인터 Chapter 2. 1차원 배열과 포인터 배열명은 주소를 뜻한다. 배열명은 배열의 첫번째 배열 요소의 주소를 뜻한다. 2_7.c #include main() { int imsi[3] = {5,3,7}; int *imsip; imsip = imsi; printf("%#010x %#010x %#010x\n", imsi, &imsi[0], imsip); printf("*imsip : %d\n",*imsip); } gcc -o 2_7 2_7.c ./2_7 0xbf927bf4 0xbf927bf4 0xbf927bf4 *imsip : 5 포인터+ 정수의의미 주소에 정수 값을 더하는 것이 허용된다는 사실에 주목. imsip +1은imsip가가리키는배열 요소 바로 다음 배열 요소를 가리킨다. imsip에 정수 값을 더할..
Chapter 3. 2차원 배열과 포인터 Chapter 3. 2차원 배열과 포인터 미리보기 3_1.c #include main() { int imsi[3][2] = {{6,3}, {9,1}, {7,2}}; int (*imsip)[2]; int i,j; imsip = imsi; for(i=0;i
실행결과 #include main() { int imsi[3][2] = { {3,5,}, {12,54}, {534,923} }; int (*imsip)[2]; int *temp[2]; imsip = imsi; // (1) imsip = &imsi[0][0];// (2) temp[0] = imsi; // (3) temp[0] = imsi[0]; // (4) temp[1] = imsi[1]; // (5) temp[2] = imsi[2]; // (6) temp[0] = *(imsi + 0); // (7) temp[1] = *(imsi + 1); // (8) temp[2] = *(imsi + 2); // (9) *temp = imsi[0];// (10) *(temp + 0) = imsi[0]; // (11) *(temp..
문자열관련 예제 051.문자 입력하기 getch() 키보드로부터 문자를 한 개 입력 받는다. getch()를 통해 문자를 입력받을 때F1, F2,Ctrl+a~Ctrl+z, Home,End, PgUp, PgDn, 방향키 등의 특수키를 입력받는경우두 번에 걸쳐 키 값을 읽어온다. #include int getch(void); 예제-051.c #include #include #define ENTER 13 void main(void) { int ch; printf("아스키 코드로 변환할 키를 누르세요...\n"); printf("Enter 키를 누르면 프로그램은 종료됩니다.\n"); do { ch = getch(); printf("문자 : (%c), 아스키 코드 = (%d)\n", ch, ch); }while(ch != ENT..
Chapter 1. 포인터의 기초 ※ 이 노트는 다시 체계적으로 배우는 C언어 포인터를 공부하면서 정리하기위함입니다. 이 노트는 C언어 포인터를 공부하는 모든 사람이 서로 정보를 공유하고업데이트할 수있습니다.(공부하면서 같이 다듬어 가실분은 언제든지 환영^^;;) 따라서,포인터를 공부하는 모든 이에게 도움이되었으면 합니다. Chapter 1.포인터의 기초 포인터란 포인터는 메모리의 위치를 표현한 기호. 포인터 변수는 포인터를 저장할 수 있는 변수. 즉, 특정한 문자나 상수 값, 문자열이 들어가는 것이 아니라 번지가 들어감. 포인터 변수는 번지 이외에는 어떠한 것도 들어갈 수 없다!!! 정의: int *imsip; 쓰레기주소값 int *imsip 처럼변수를 사용할수 있도록 메모리의 특정 영역 4바이트가 선언되었고 초기화가 되지 않은 상태이..