1. 문자 배열의 정의와 초기화
문자 배열의 초기화를 이해하는 가장 쉬운 방법은 배열의 각 요소에 문자를 하나씩 할당하는 것입니다.
char str[10]={ '나',' ','a','m',' ','h','a','p','p','y'};
즉, str[0]부터 str[9]까지 10개의 요소에 각각 10자를 할당합니다
중괄호 안에 제공된 문자 수가 배열 길이보다 크면 구문으로 처리됩니다. 오류; 배열 길이보다 작으면 이러한 문자 배열의 첫 번째 요소만 자동으로 빈 문자(예: '
3. 문자열 표현
C 언어에서는 문자열을 표현하고 저장하는 방법이 두 가지가 있습니다.
(1) 문자 배열을 사용하여 문자열을 저장합니다.
char str[ ]= "I love China ";
(2) 문자 포인터를 사용하여 문자열을 가리킵니다
char* str="I love China";
두 번째 표현 방법의 경우 str이 문자열 변수라고 생각하는 사람들도 있습니다. 문자열 상수 "I love China"는 정의할 때 문자열 변수에 직접 할당되는데 이는 잘못된 것입니다.
C 언어는 문자열 상수를 문자 배열로 처리합니다. 문자열 상수를 저장하기 위해 메모리에 문자 배열이 열립니다. 프로그램이 문자열 포인터 변수 str을 정의하면 문자열의 첫 번째 주소만 변경됩니다. 문자가 저장되는 위치) 문자열의 문자 배열의 첫 번째 주소가 str에 할당됩니다.
문자열 출력의 두 가지 표현 모두
printf("%sn",str);
%s는 문자 포인터 변수 이름 str(첫 번째 표현 방법의 경우 문자 배열 이름)을 제공하여 문자열을 출력한다는 의미입니다. 는 문자 배열의 첫 번째 주소이며 이는 두 번째 방법의 포인터의 의미와 일치합니다. 시스템은 먼저 그것이 가리키는 문자 데이터를 출력한 다음 자동으로 str에 1을 추가하여 문자를 아래쪽으로 가리킵니다. ., 문자열 끝 식별자 "까지 계속됩니다.