Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C程序不会编译_C_Compiler Errors - Fatal编程技术网

C程序不会编译

C程序不会编译,c,compiler-errors,C,Compiler Errors,当我试图编译我的C程序时,终端告诉我: 警告:函数“strcopy”的隐式声明无效 C99[-Wimplicit函数声明]strcopy(“测试”、“测试”)中无效 我的代码顶部有#include,所以我很困惑为什么它不会编译。任何帮助都将不胜感激。它清楚地说明了问题所在。您需要使用函数strcpy在标准库中没有被称为strcopy,并且编译器认为相应的隐式声明无效。实际上C99不允许隐式声明——它显示了错误,这就是为什么 其他选项是先定义函数strcopystrcopy,然后在使用它之前定义它

当我试图编译我的C程序时,终端告诉我:

警告:函数“strcopy”的隐式声明无效
C99[-Wimplicit函数声明]strcopy(“测试”、“测试”)中无效


我的代码顶部有
#include
,所以我很困惑为什么它不会编译。任何帮助都将不胜感激。它清楚地说明了问题所在。您需要使用函数
strcpy
在标准库中没有被称为
strcopy
,并且编译器认为相应的隐式声明无效。实际上C99不允许隐式声明——它显示了错误,这就是为什么

其他选项是先定义函数strcopy
strcopy
,然后在使用它之前定义它


另一件事是如何使用strcpy,您已经将字符串文本作为参数传递,这是一种未定义的行为。不确定它将起什么作用,因为通常我们将
dest
指向的字符串复制到
strcpy
中的
src
。(
src
是第二个参数,
dest
是第一个参数)。

您的代码中有输入错误:
使用strcpy而不是strcopy,因为strcpy是字符串库提供的功能。

那么解决方法是什么?@dmeluban.:使用带有适当参数的
strcpy
man strcpy
会有帮助。@dmeluban.:答案中还提到了其他选项…选择适合的选项you@dmeluban解决办法是从阅读有关的章节开始在继续讨论字符串之前,在C语言书中使用数组和指针。即使修复了错误的函数名,
strcpy(“test”,“test”)调用未定义的bahaviour。不能将任何文本复制到字符串文字中。