gpt4 book ai didi

c - main 的多重定义首先在这里定义

转载 作者:行者123 更新时间:2023-11-30 15:13:03 25 4
gpt4 key购买 nike

我是编程新手,目前正在学习 C 编程。我正在使用 GCC 编译器在代码块上编写代码。当我创建一个新项目时(如您所知,它会使用它创建 main.c 文件),因此我无法编译该项目中的另一个文件。

文件1:

 #include<stdio.h>

int main()
{
int a,b,c,d;
printf("Enter three numbers\n");
scanf("%d%d%d",&a,&b,&c);
d=a;
if(b>d)
d=b;
if(c>d)
d=c;
printf("\n The maximum of three numbers is %d",d);

}

文件2:main.c

#include <stdio.h>

int main()
{
printf("Hello world!\n");
return 0;
}

当我编译第一个程序时,显示以下错误:“main”的多重定义首先在这里定义

我已经搜索了所有可以搜索的地方,但无法解决这个问题。在关于堆栈溢出的答案之一中,有人建议将其写在(项目->构建选项...->链接器设置(选项卡))

-Wl,--allow-multiple-definition

我写的时候没有错误。但它无法运行我的文件 1,而是运行 main.c 文件。即使当我关闭 main.c 文件时,它也会再次打开并运行 main.c 文件,该文件给出输出“Hello World!”。

最初当我使用代码块时没有这样的错误。我不知道为什么会发生这种情况,而且我对编译器了解不多。

最佳答案

正如评论中所述,您只能有一个主要功能。

因此,当您开始一个新项目时,您需要将 main.c 文件替换为您要使用的 main.c 文件。或者您可以编辑“hello world”main.c 程序。

当您在 code::blocks 中启动一个新项目时,您可以通过一个打印“Hello World”的简单程序获得一个新目录。该文件通常是main.c。您需要编辑此文件或替换它。 code::blocks 将这个简单的 main.c 程序放在新项目中的原因是,您可以编译它并测试您的系统,而无需编写新程序。

关于c - main 的多重定义首先在这里定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34856493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com