使用GCC编译器时遇到-Wimplicit-int警告求助
解决GCC编译C代码时的
return type defaults to 'int'警告 警告原因
你的myFunction定义时未显式指定返回类型,在旧版C标准(如C89)中会默认返回int,但现代C标准(C99及之后)强制要求显式声明函数返回类型,因此GCC会抛出该警告。由于你的函数仅执行打印操作、无需返回值,正确的返回类型应为void。
代码中其他问题
main函数内的三次myFunction调用末尾均缺少分号,这属于语法错误,尽管部分编译器可能宽容处理,但严格不符合C语法规范。
修改后的完整代码
#include <stdio.h> // 显式声明返回类型为void,表示函数无返回值 void myFunction(char name[]) { printf("Hello %s\n", name); } int main(void) { myFunction("Liam"); myFunction("John"); myFunction("Anne"); return 0; }
编译验证
使用命令gcc your_file.c -o your_program编译修改后的代码,将不再出现return type defaults to 'int'警告,且代码完全符合现代C标准规范。
内容的提问来源于stack exchange,提问作者Cornelius Ngure
相关产品推荐
相关产品推荐

