在比较字符串之前,确保字符串已经被正确地初始化和终止。如果字符串以'\0'结尾,可以使用strcpy而不是strncpy函数。此外,可以尝试使用memcmp函数来比较两个字符串,而不是strcmp。以下是示例代码:
char str1[10] = "Hello";
char str2[10] = "Hello";
// 使用strcpy来初始化和终止字符串
strcpy(str1, "Hello");
strcpy(str2, "Hello");
// 使用memcmp比较字符串
if (memcmp(str1, str2, strlen(str1)) == 0)
{
printf("Strings are equal\n");
}
else
{
printf("Strings are not equal\n");
}
注意,在使用memcmp函数时,需要提供字符串的长度作为第三个参数,以避免比较零填充字符串时发生问题。
上一篇:比较相同的文件不匹配