
strncmp 함수는 null terminated string을 비교할 때 '\0'이 포함되지 않도록 하기 위해서는 '\0'을 제거한 후 비교하거나, strncmp 함수의 두 번째 인자로 '\0'을 제거한 문자열의 길이를 지정하는 방법이 있습니다.
예를 들어, "hello"와 "hello\0"을 비교할 때는 "hello\0"의 '\0'을 제거한 후 비교하거나, strncmp 함수의 두 번째 인자로 "hello\0"의 길이인 6을 지정하면 됩니다.
strncmp 함수는 null terminated string이 아닌 일반 string을 비교할 수 있습니다. 일반 string은 '\0'이 포함되지 않은 문자열입니다. strncmp 함수는 두 번째 인자로 일반 string의 길이를 지정하여 null terminated string과 일반 string을 비교할 수 있습니다.
strncmp 함수의 사용 예시는 다음과 같습니다.
#hostingforum.kr
c
#include
#include
int main() {
char str1[] = "hello";
char str2[] = "hello ";
char str3[] = "hello";
printf("%dn", strncmp(str1, str2, 5)); // 0
printf("%dn", strncmp(str1, str2, 6)); // 0
printf("%dn", strncmp(str1, str3, 5)); // 0
printf("%dn", strncmp(str1, str3, 6)); // 0
return 0;
}
이 예시는 strncmp 함수를 사용하여 "hello"와 "hello\0"을 비교합니다. 두 번째 인자로 5 또는 6을 지정하여 null terminated string과 일반 string을 비교합니다. 결과는 모두 0으로, 두 문자열이 같다는 것을 나타냅니다.
2025-07-29 19:36