红色部分:为何这条语句会出现错误,这条错误提示是什么意思?

图片说明图片说明

205行

char* s_gets(char*,int,stdin);---->char* s_get(char*, int, FILE*)

230行

char* s_gets(char*,int,stdin);---->char* s_get(char*, int, FILE*)

函数的声明中,因为stdin不是类型,被编译器将这个位置视为int类型,黄字说明了。

212行stdin是一个stdlib中的一个成员,可以理解为控制台的标准输入流。

在传递给函数s_gets(...)的时候就被转为int,因为你定义的函数是这样定义的。

235行 fgets(char*,int,FILE*) 是stdlib中的一个函数。在需要FILE*的函数接受了int类型的参数,就报错了。不能将FILE*转为int。

205行的stdin换成 FILE*