我正在尝试计算 char p[] 中有多少个破折号“-”。我遍历字符串,并使用 strcmp 函数将 p[i] 位置的内容与“-”进行比较。如果它们相同,则 strcmp 函数返回 0。
int howmanyDash( char p[] ){
int length = strlen(p);
int i, count = 0;
for (i = 0; i < length; i++)
{
if (strcmp(p[i], "-") == 0)
{
++count;
}
}
return count;
}
int main(){
char word[20];
scanf("%s", word);
int dashCount = howManyDash(word);
printf("Dashes: %d\n", dashCount);
return 0;
}
我得到的错误如下:警告:不兼容的整数到指针转换将'char'传递给'const char *'类型的参数;用 & [-Wint-conversion] if (strcmp(p[i], "-") == 0) 获取地址
此警告在第 7 行生成: if (strcmp(p[i], "-") == 0)