๋ฌธ์ž๋ฐฐ์—ด

  • char ํ˜• ๋ฌธ์ž๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๋ชจ์•„๋†“์€ ๋ฌธ์ž ์ง‘ํ•ฉ
    • ๋ฌธ์ž : ์ž‘์€ ๋”ฐ์˜ดํ‘œ โ€™ โ€˜
    • ๋ฌธ์ž์—ด : ํฐ ๋”ฐ์˜ดํ‘œ โ€ โ€
    • โ€˜\0โ€™ (NULL) : ๋ฌธ์ž์—ด ๋์— ํ•ญ์ƒ ๋ฌธ์ž์ฝ”๋“œ โ€˜\0โ€™์„ ๋ง๋ถ™์—ฌ์•ผ ํ•จ
char str[5] = {'A', 'B', 'C', 'D', '\0'}; // ์˜ณ์€ ์„ ์–ธ
char str[4] = {'A', 'B', 'C', 'D'} // ์ž˜๋ชป๋œ ์„ ์–ธ
char str[] = "ABCD"; // ์˜ณ์€ ์„ ์–ธ 
char str[5]; // ์˜ณ์€ ์„ ์–ธ 
str[0] = 'A'; 
str[1] = 'B'; 
...
str[4] = '\0';

์ด๋Ÿฌํ•œ ํŠน์ง• ๋•Œ๋ฌธ์— ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋Š” ์‹ค์ œ ๋ฌธ์ž์—ด์˜ ํฌ๊ธฐ + 1 ๋กœ ์„ ์–ธํ•ด์•ผ ํ•จ

๋ฐ˜๋ณต๋ฌธ์—์„œ ๋ฌธ์ž์—ด์˜ ์ข…๋ฃŒ ์กฐ๊ฑด

for (i = 0; str[i]; i++)
    printf("%c\n", str[i]);
 
while(str[i])
    ... ... 
  • ๋ฌธ์ž์—ด ๋์— ์ œ์–ด ๋ฌธ์ž NULL์ด ์žˆ๊ธฐ์— ๊ฐ€๋Šฅํ•จ

๋ฌธ์ž์™€ ๋ฌธ์ž์—ด์˜ ์ฐจ์ด

  • \0์ด ์ถ”๊ฐ€๋œ ํ˜•ํƒœ๋กœ ์กด์žฌํ•จ

๋ฐฐ์—ด๊ณผ ์ฃผ์†Œ

๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ• ๋‹น๋œ ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. ๋ณ€์ˆ˜๋ช…์œผ๋กœ ์ ‘๊ทผ
  2. ๋ณ€์ˆ˜์˜ ์ฃผ์†Œ๊ฐ’์œผ๋กœ ์ ‘๊ทผ : ๋ณ€์ˆ˜ ์•ž &๋ฅผ ๋ถ™์ž„

scanf

int a;
scanf("%d", &a);
  1. a๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•ด๋ผ. ์ž๋ฃŒํ˜•์€ int๋กœ
  2. 10์„ ์ž…๋ ฅํ–ˆ๋‹ค๋ฉด a๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ์ฃผ์†Œ์— ๋„ฃ์–ด๋ผ

๋ฐฐ์—ด๊ณผ ์ฃผ์†Œ์™€์˜ ๊ด€๊ณ„

  • ๋ฐฐ์—ด์€ ๋™์ผํ•œ ์ž๋ฃŒํ˜•์„ ๋™์‹œ์— ์„ ์–ธํ•˜๋Š” ๊ฒƒ
  • ๋ฉ”๋ชจ๋ฆฌ์— ๋ฐฐ์—ด์˜ ์›์†Œ ๊ฐœ์ˆ˜๋งŒํผ์˜ ๊ณต๊ฐ„์ด ๋™์‹œ์— ํ• ๋‹น๋จ

๋ฐฐ์—ด๋ช…์œผ๋กœ ์ฃผ์†Œ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•