C语言指针传递问题
程序代码:#include<stdio.h>
int length(char *p);
int length(char *p){
int n=0;
while(*p!='\0'){
n++;
p++;
}
return n;
}
int main(){
int len;
char str[100];
printf("input:\n");
gets(str);
len=length(str);
printf("%d",len);
return 0;
}gets(s)函数,如果定义s为字符串指针,即char *s[100] 传递时这样写gets(s)就是错误的。必须写成gets(*s);请问这是为什么?




