在做完信息管理系统的时候,发现codeblock报错error: ld returned 1 exit status。仔细检查代码却发现并没有犯语法上的错误,翻遍了各大网站的blog都没找到解决方案。
推荐一篇经验分享的blog讲解了error: ld returned 1 exit status的原因
《C语言报错[Error] ld returned 1 exit status的解决方法》 https://blog.csdn.net/m0_52847482/article/details/121735559?utm_source=app&app_version=5.3.0&code=app_1562916241&uLinkId=usr1mkqgl919blen
但我的代码如下:
//写在file1.c文件中 char filename[]="文件路径.txt"; int main(){ //some operation; return 0; }
偶然间,我发现了自己错在了哪里。其实就是重复声明了变量filename。因为我在同一项目下的另一份文件里已经声明了该变量。形式如下:
//写在file2.c文件中 char filename[]="文件路径.txt"; int 函数名(参数类型 参数名){ //some operation; return 0; }
导致项目在运行时报错。
解决的方案有两种(一)是取消声明,把filename改为全局变量(二)是只定义不声明
//写在file1.c文件中 char filename[];//只定义不声明 int main(){ //some operation; return 0; }
记录一下自己犯的低级错误,另外如果文章中有错误的地方欢迎指正。
如有侵权,请联系作者删改!