본문 바로가기
C언어/문자열

C언어 문자열 정의하면 길이가 하나 늘어나는 이유 (널문자)

by bigpicture 2022. 6. 22.
반응형

문자열을 정의하면 길이가 하나 늘어납니다. 아래와 같이 abcde 를 정의하고 길이를 출력하면 6이 나옵니다. 

#include <stdio.h>

int main()
{
    char str[]="abcde";
   
    printf("정의한 문자열은 %s 입니다. \n",str);
    printf("정의한 문자열 길이는 %ld 입니다.",sizeof(str));
    
}


이유는 문자열 마지막에 널문자 \0이 자동으로 추가되기 때문입니다. 널문자는 문자열의 끝을 컴퓨터에게 알려주기 위해서 생성됩니다. 

반응형

댓글