

C ์ธ์ด์์ ๋ฌธ์์ด์ ๋ฌธ์๋ค์ ๋ฐฐ์ด๋ก ํํ๋ฉ๋๋ค. ๋ฌธ์์ด์ ์ข ์ข null ๋ฌธ์('\0')๋ก ๋๋๋ฉฐ, ์ด null ๋ฌธ์๋ ๋ฌธ์์ด์ ๋์ ๋ํ๋ ๋๋ค. C ์ธ์ด์์๋ ๋ฌธ์์ด์ char ๋ฐฐ์ด๋ก ์ ์ํ๊ณ , ์ด ๋ฐฐ์ด์ ์ฌ์ฉํ์ฌ ๋ฌธ์์ด์ ๋ค๋ฃน๋๋ค.

๊ทธ๋ฌ๋ฉด ๋ค์ ์ฝ๋๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.

#include <stdio.h>
void main() {
char str[20]; // ๋ฌธ์์ด์ ์ฐ์๋ ์งํฉ!
str[0] = 'h';
str[1] = 'e';
str[2] = 'l';
str[3] = 'l';
str[4] = 'o';
str[5] = '\0';
char str1 = 'h';
char str2 = 'e';
char str3 = 'l';
char str4 = 'l';
char str5 = 'o';
char str6 = '\0';
printf("%s\n", str);
printf("%c%c%c%c%c\n", str1, str2, str3, str4, str5);
}

๋ฌธ์ ๋ฐฐ์ด str์ ๋ฉ๋ชจ๋ฆฌ์ ์์๋๋ก ์ ์ฅ์ด ๋ฉ๋๋ค. ํ์ง๋ง ๊ฐ๊ฐ์ ๋ณ์๋ก ๋ฌธ์์ด์ ์ถ๋ ฅํ๋ฉด ๊ฐ์ ๋๊ฐ์ ๋ณด์ด์ง๋ง ๋ฉ๋ชจ๋ฆฌ ์์์๋ ๋ค๋ฅด๊ฒ ์ ์ฅ์ด ๋๋ ๊ฒ์ ๊ธฐ์ตํ์๋ฉด ์ข์ต๋๋ค.
null ๋ฌธ์ ('\0'): C ์ธ์ด์์ ๋ฌธ์์ด์ null ๋ฌธ์๋ก ๋๋์ผ ํฉ๋๋ค. null ๋ฌธ์๊ฐ ์์ผ๋ฉด ๋ฌธ์์ด ํจ์๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ๋์ํ์ง ์์ ์ ์์ต๋๋ค.
C ์ธ์ด์์๋ ๋ฌธ์์ด์ ๋ค๋ฃฐ ๋ ์ฃผ์ํด์ผ ํ ๋ช ๊ฐ์ง ์ค์ํ ์ฌํญ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฌธ์์ด์ ๋์ null ๋ฌธ์๊ฐ ์์ด์ผ ํ๋ฉฐ, ์ถฉ๋ถํ ๊ณต๊ฐ์ ํ ๋นํด์ผ ํฉ๋๋ค. ๋ํ, ๋ฌธ์์ด์ ์์ ํ๋ ํจ์๋ฅผ ์ฌ์ฉํ ๋ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ์ ๊ฐ์ ๋ณด์ ๋ฌธ์ ์ ์ฃผ์ํด์ผ ํฉ๋๋ค.
C ์ธ์ด์์ rand() ํจ์๋ ๋์(๋๋ค ์ซ์)๋ฅผ ์์ฑํ๋ ํจ์์ ๋๋ค. ์ด ํจ์๋ ๋์ ๋ฐ์๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ 0 ์ด์ RAND_MAX ์ดํ์ ๊ฐ์ ๋ฐํํฉ๋๋ค. RAND_MAX๋ ์์คํ ์ ๋ฐ๋ผ ๋ค๋ฅผ ์ ์์ง๋ง, ์ต์ 32767๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์์ผ ํฉ๋๋ค.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
// ๋์ ๋ฐ์๊ธฐ๋ฅผ ์ด๊ธฐํํ๊ธฐ ์ํด ์๊ฐ์ ์ฌ์ฉ
srand(time(NULL));
// 0 ์ด์ 32767 ์ดํ์ ๋์ ์์ฑ
int random_number = rand();
printf("Random number: %d\n", random_number);
return 0;
}
์ด ์์ ์์ srand(time(NULL));๋ ํ์ฌ ์๊ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํ ์๋(seed) ๊ฐ์ ์ค์ ํ์ฌ ๋์ ๋ฐ์๊ธฐ๋ฅผ ์ด๊ธฐํํฉ๋๋ค. ์๋ ๊ฐ์ ๊ฐ์ ์๊ฐ์ ํ๋ก๊ทธ๋จ์ ์คํํ ๋๋ง๋ค ๋ฌ๋ผ์ ธ์ผ ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋งค๋ฒ ๊ฐ์ ๋์๊ฐ ์์ฑ๋ ๊ฒ์
๋๋ค. ๋ฐ๋ผ์ ์๋ ๊ฐ์ ๋ณ๊ฒฝํจ์ผ๋ก์จ ๋ค์ํ ๋์๋ฅผ ์ป์ ์ ์์ต๋๋ค.
'Programming > C language' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
12 Pointer (1) | 2024.01.24 |
---|---|
11 function (ํจ์) (0) | 2024.01.23 |
9 while & do-while (feat. break & continue) (1) | 2024.01.23 |
8 for loop (feat. Nested loop) (1) | 2024.01.23 |
7 if & switch (2) | 2024.01.23 |
๋๊ธ