2020. 4. 19.

[c] 인프런 39. 문자 vs 문자열 강의 정리


하나의 문자을 넣을때는 그냥 char c 변수를 만듬
문자를 넣을땐 char c[6] 이렇게 배열로 만들어야함.


#include<stdio.h>

int main(void)
{
// 문자 vs 문자열
char c = 'A';
printf("%c\n", c);

//문자열 끝에는 ''을 의미하는 NULL 문자'\0'가 포함
// 6칸을 만들어서 [c] [o] [d] [i] [n] [g] [\0]로 넣음
char str[6] = "coding";
char str1[7] = "coding";
printf("%s\n", str);
printf("%s\n", str1);

return 0;
}


문자열에 뒤에는 \0 들어가서 문자열이라는 표시를 해줘야한다.
공간이 없으면 위에 출력문처럼 이상하게 나온다.


#include<stdio.h>
int main(void)
{
char str[] = "coding";
printf("%s\n", str);
printf("%d\n", sizeof(str));

for (int i = 0; i < sizeof(str); i++)
{
printf("%c\n", str[i]);
}
return 0;
}


넣은 글자는 6글자지만
7자리가 출력되는건 뒤에 공백글자가 자동으로 입력되서이다.
g 다음까지 띄어쓰기가 되는 이유도 뒤에 공백이 있어서이다.


char kor[] = "나도코딩";

printf("%s\n", kor);
printf("%d\n", sizeof(kor));


영어는 한글자가 1byte 한글은 한글자에 2byte  char 크기는 1byte
나도코딩 의 크기는 글자크기 8byte + 공백글자 1byte 9byte


댓글 없음:

댓글 쓰기