我一直被告知在这行代码中从不兼容的指针类型传递参数。
这是代码行:
if (linear_search (size_of_A, argv[i]))
这是什么意思,我该如何解决?这是整个程序:
int linear_search ( int size_of_A, char*argv[]){
int i;
i = 2;
while (i <= size_of_A - 1){
if (!strcmp (argv [1], argv[i])){
return 1;
}
}
return 0;
}
int main (int argc, char*argv []){
int size_of_A = argc - 2;
int i = 2;
if (linear_search (size_of_A, argv)){
printf ("%s not found\n", argv [1]);
return 1;
} else{
printf ("%s found\n", argv[1]);
return 0;
}
i = i + 1;
}
}
好的,这修复了警告,但是现在当我通过编译器运行程序时,什么也没有发生。它应该告诉我第一个参数是否重复。
例如,输出将如下所示:
./a 3 hso 8 3
3 found