C 参数太少,无法调用函数
我是C编程新手,正在阅读一本名为“Sam’s自学C编程一天一小时”的书 第二章中的一个练习程序给了我一个错误,我太新手了,无法理解。一点帮助和清楚的解释,而不是夸夸其谈的讽刺,将不胜感激!谢谢你的时间和考虑C 参数太少,无法调用函数,c,C,我是C编程新手,正在阅读一本名为“Sam’s自学C编程一天一小时”的书 第二章中的一个练习程序给了我一个错误,我太新手了,无法理解。一点帮助和清楚的解释,而不是夸夸其谈的讽刺,将不胜感激!谢谢你的时间和考虑 错误说明了一切:fgets()需要三个参数。你给它一个 所以,这样称呼它: fgets(buffer, 256, stdin) 缓冲区是存储输入的地方,256是缓冲区的大小,stdin是要读取的流 另外,将%d替换为无符号长字符的格式说明符 编辑: 作为%zu,用于strlen返回的值,其
错误说明了一切:fgets()需要三个参数。你给它一个 所以,这样称呼它:
fgets(buffer, 256, stdin)
缓冲区是存储输入的地方,256是缓冲区的大小,stdin是要读取的流
另外,将%d替换为无符号长字符的格式说明符
编辑:
作为
%zu
,用于strlen
返回的值,其类型为size\u t
fgets(缓冲区)代码>-->fgets(缓冲区、缓冲区大小、标准输入)
,%d
-->%zu
对于以后的问题,请将代码和错误消息复制/粘贴为文本(缩进4列,以便格式正确),而不是使用屏幕截图。如果有人想在本地试用该代码,屏幕截图可能很难阅读,并且无法从中复制/粘贴示例代码。谢谢您的建议。从现在起,我将按照这些指示进行发布。我真的很感谢你的时间和考虑。干杯@ChristopherPettit完全不相关,那是什么文本编辑器?您应该通过单击复选标记接受解决问题的答案。非常感谢!我真的很感谢你的时间。这非常有效。不,请使用%zu
作为strlen
返回的值,该值的类型为size\u t
。谢谢大家。我不知道。@Christopher不客气。如果一个答案解决了我们的问题,考虑接受它。欢迎使用StackOverflow和编程!