Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C中使用strcmp()比较输入字符串的一部分_C_Strcmp - Fatal编程技术网

在C中使用strcmp()比较输入字符串的一部分

在C中使用strcmp()比较输入字符串的一部分,c,strcmp,C,Strcmp,通常strcmp与两个参数一起使用[例如strcmp(str1,“garden”)],如果两者相同,则返回0 是否可以比较部分输入,比如输入的前五个字符?(例如,strcmp(str1,“garde”,5)) #包括 #包括 内部主(空){ char str1[]=“花园”; 如果(strcmp(str1,“花园”)==0) { printf(“1”); } 如果(strcmp(str1,“花园”,6)=0) { printf(“2”); } 如果(strcmp(str1,“garde”,5)=

通常strcmp与两个参数一起使用[例如strcmp(str1,“garden”)],如果两者相同,则返回0

是否可以比较部分输入,比如输入的前五个字符?(例如,
strcmp(str1,“garde”,5)

#包括
#包括
内部主(空){
char str1[]=“花园”;
如果(strcmp(str1,“花园”)==0)
{
printf(“1”);
}
如果(strcmp(str1,“花园”,6)=0)
{
printf(“2”);
}
如果(strcmp(str1,“garde”,5)=0)
{
printf(“3”);
}
返回0;
}
您正在寻找的

请记住,C不支持重载,因此同一函数的每个“变体”都有一个唯一的名称。

使用strncmp:

if (strncmp(str, "test", 4) == 0) { printf("it matches!"); }

有关更多信息,请参阅。

您需要strncmp Hey Troy感谢您的回复。它是否可以与3个参数一起工作,因为我得到了这个错误,prog.c:10:29:error:macro“strcmp”传递了3个参数,但只需要2个参数Hey Crozin,谢谢。我应该批准哪一个答案,因为你们两个几乎同时回答lol。。。
if (strncmp(str, "test", 4) == 0) { printf("it matches!"); }