작성
·
197
1
char str3[20] = "Hello,\0World";
char str3[20] = "Hello, \0World";
printf("%c\n", str3[10]); 의 값이
, 바로뒤에\0를 치면 l이고
, 하고 한 칸 띄고 \0을 치면 r입니다.
h = 0번째
e = 1번째
...
, = 5번째
\0 = 6번째
W = 7번째
o = 8번째
r = 9번째
l = 10번째
d = 11번째
중간에 띄워쓰기도 공백으로서 자릿수를 차지해서
위와 같은 결과가 나오는 걸까요?
답변 1
1
안녕하세요, 답변 도우미 Soobak 입니다.
말씀하신 내용이 맞습니다.
문자 사이의 띄어쓰기(공백) 또한 하나의 문자로 카운트됩니다.
(공백 또한 문자로서, ASCII
코드가 32
인 문자입니다.)
따라서, "Hello,\0World"
와 "Hello, \0World"
는 서로 다릅니다.
전자에서는 str3[10]
이 l
이며, 후자에서는 str3[10]
이 r
이 됩니다.