“Hi, Woojin!” 문자열을 저장하려면 12개의 문자를 저장해야 된다는 것을 알았습니다. 그러면 문자 자료형과 배열을 이용하면 다음 두 가지 방법으로 저장할 수 있습니다.
➊ char s1[12] = { 'H', 'i', ',', ' ', 'W', 'o', 'o', 'j', 'i', 'n','!', '\0' };
➋ char s2[12] = "Hi, Woojin!";
배열 s1과 s2 메모리 구조와 문자가 어떻게 들어가는지 그림으로 표기하면 다음과 같습니다.
그림 7-14 | 문자열이 메모리에 저장되는 방법
첫 번째 방법은 문자 하나 하나를 배열 저장소에 저장하는 방식입니다. 마지막에 널 문자를 직접 추가해야 하지요.
두 번째 방법은 큰따옴표(" ") 사이에 문자열을 초기화하여 저장하는 방식입니다. 첫 번째 방법과 달리 널 문자를 컴파일러가 초기화할 때 자동으로 추가합니다.
두 방법 모두 사용 가능하며, 둘 다 동일하게 문자열을 저장하는 것을 확인할 수 있습니다. 물론 두 번째 방법으로 문자열을 저장하는 것이 더 편하겠죠?