728x90
strncmp์ strcnp
ํค๋ํ์ผ
<string.h> // c์ธ์ด
<cstring> // c++
function prototype
int strcmp(const char* str1, const char* str2);
int strncmp(const char* str1, const char* str2, size_t n);
- strcmp
- str1 : ๋น๊ตํ ๋ฌธ์์ด 1
- str2 : ๋น๊ตํ ๋ฌธ์์ด 2
- strncmp
- str1 : ๋น๊ตํ ๋ฌธ์์ด 1
- str2 : ๋น๊ตํ ๋ฌธ์์ด 2
- n : ๋น๊ตํ ๋ฌธ์์ด ๊ธธ์ด (size_t๋ unsigned int / 0๋ณด๋ค๋ ํฐ ๊ฐ์ด ๋ค์ด์์ผํ๋ค.)
- str1์ด ๋ฌธ์ 8๊ฐ str2๊ฐ ๋ฌธ์์ด 18๊ฐ๋ก ๊ตฌ์ฑ๋์ด ์์ ๋ n์ด 10, 100์ ๋ฃ์ด๋ str1์ 8๊ฐ ๋ฌธ์๋ง ๋น๊ตํ๋ค.
strcmp ๋น๊ต
char str1[] = "Loki MCU";
char str2[] = "Loki MCU";
strcmp(str1, str2); // ๋ฌธ์์ด ๊ฐ๋ค : 0 ๋ฐํ
strcmp(str1, "Loki PCU"); // 'M' < 'P' ์์ ๋ฐํ cf) M : 120 P : 123
strcmp(str1, "Loki DCU"); // 'M' > 'D ์์ ๋ฐํ cf) M : 120 D : 111
- C์ธ์ด ๋ฌธ์์ด char*, char[]์ ๋์๋ ๋ฌธ์์ด์ ๋์ธ '\0'์ด ๋ค์ด๊ฐ ์๋ค.
- ์ด๊ฒ์ null์ ์๋ฏธ = ์์คํค์ฝ๋ 0
- ์์คํค์ฝ๋๊ฐ 'M' < 'P' ์์๋ฐํ
- ์์คํค์ฝ๋๊ฐ 'M' > 'D' ์์๋ฐํ
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Loki MCU";
char str2[] = "Loki MCU";
printf("strcmp(%s, %s)\t = %d\n", str1, str2, strcmp(str1, str2)); // ๋ฌธ์์ด ๊ฐ๋ค : 0 ๋ฐํ
printf("strcmp(%s, %s)\t = %d\n", str1, "Loki PCU", strcmp(str1, "Loki PCU")); // ๋ฌธ์์ด : ์์ ๋ฐํ
printf("strcmp(%s, %s)\t = %d\n", str1, "Loki DCU", strcmp(str1, "Loki DCU")); // ๋ฌธ์์ด : ์์ ๋ฐํ
}
strncmp ๋น๊ต
const char* str1 = "LokiMcinema";
const char* str2 = "LokiDcinema";
strncmp(str1, str2, 4); // Loki ๊น์ง ๋ฌธ์์ด ๊ฐ๋ค : 0 ๋ฐํ
strncmp(str1, str2, 5); // 'M' - 'D' : 9 ๋ฐํ cf) M : 120 D : 111
- 4๊ธ์ ๋น๊ต์ Loki๊น์ง ์ ๋ถ ๊ฐ๋ค
- 5๊ธ์ ๋น๊ต์ 'M' - 'D' : 9 ๋ฐํ cf) M : 120 D : 111
#include <stdio.h>
#include <string.h>
int main() {
const char* str1 = "LokiMcinema";
const char* str2 = "LokiDcinema";
printf("strncmp(%s, %s, 4)\t = %d\n", str1, str2, strncmp(str1, str2, 4));
printf("strncmp(%s, %s, 5)\t = %d\n", str1, str2, strncmp(str1, str2, 5));
}
'TIL (Today I Learned) > C' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C] Socket close() shutdown() ์ฐจ์ด (0) | 2021.09.01 |
---|---|
[c] c์ธ์ด ๊ตฌ์กฐ์ฒด์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ด์ฆ (0) | 2021.08.17 |