我必须找到其中具有特定字符的单词数量,我从参数中得到的结果。我必须使用一般意见。我做了一个功能,但它不起作用。我不知道如何正确使用参数。
void function(char *argv) {
char x;
int c,i;
x = argv[1][0] ;
i = 0;
while((c = getchar()) != EOF) {
if(c == x)
++i;
}
printf("%d \n",i);
}
答案 0 :(得分:3)
假设argv
与传递给main
的内容相同,则您的函数声明不正确:它必须是
void function(char *argv[]) {
... // ↑↑
}
现在,您可以将argv
视为一个包含两个下标运算符的字符数组数组。
当然,因为除了第一个参数的第一个字符之外你没有使用argv
的任何部分,你也可以接受一个char
,然后让调用者决定它会使用哪个`char是:
void function(char x) {
...
}
...
int main(int argc, char *argv[]) {
... // Check argc...
function(argv[1][0]);
}