원본 본문으로 이동하기

(왕초보) C언어 배열과 문자열

쿠에 - 포인터는 배열의 첫 주소와 같습니다. 예를 들면 *poi = poi[0]; poi = &poi[0]; 그러므로 *(poi+1) = poi[1]; *(1+poi) = 1[poi]; //도 가능합니다! C언어는 문자열이라는 자료형은 없습니다. 그 대신 한글자씩 char(문자형)변수에 저장하여 합쳐서 보여줍니다. 그리고 저장할 때 문자열은 항상 NULL문자(\0)로 끝납니다. 그래서 문자열을 구분할 수 있습니다. 위의 포인터는 배열의 첫 주소를 가르키는 것과 같은 것을 응용하여 생각하면 다음 그림과 같이 가변적인 공간을 만들 수 있습니다. 일반적인 배열은 한정적인 공간을 설정하여 넣으려는 자료(Data)가 공간보다 크면 넣을 수 없고 작으면 낭비가 될 수 있습니다. [미디어]가리사니 1-121.png[/미디어] char name[5][7]; // 배열 하지만 아래와 같이 [미디어]가리사니 1-120.png[/미디어] char *name[5]; // 위의 배열보다 가변적인 공간을 만들어 참조합니다. - C