![]() |
1
9
将它们放在不同的文件中,并指定一个.c文件用于正常使用,一个.c文件用于测试。
|
![]() |
2
15
这里的其他答案是相当合理的,但严格来说,您遇到的问题并不是GCC的问题,而是C运行时的问题。可以使用
|
![]() |
3
7
我假设你用的是Make或类似的东西。我将创建两个包含main函数不同实现的文件,然后在makefile中定义两个独立的目标,它们对其余文件具有相同的依赖关系,除了一个使用“单元测试main”,另一个使用“普通main”。像这样:
只要“normal”目标更接近makefile的顶部,那么默认情况下键入“make”将选择它。您必须键入“makeunittest”来构建测试目标。 |
![]() |
4
7
可以使用宏将一个函数重命名为main。
|
![]() |
5
6
我倾向于使用不同的文件,并使测试和生产构建,但如果你有一个与
和
然后选择其中一个作为主编译器的编译器选项是
|
![]() |
6
5
我今天遇到了同样的问题:m1.c和m2.c都有一个main函数,但需要链接并运行其中一个。 解决方案:用户在编译后但在链接之前删除其中一个的主符号:
将从m2开始运行
无带:
|
![]() |
7
2
编辑:
更直接地说,main通常更像是标准库的一个函数。打电话的东西
在GCC工具链中,还可以使用
如果你不喜欢
|
![]() |
8
1
|
![]() |
9
0
可以
|
![]() |
10
0
首先,不能有两个名为
|
![]() |
11
0
|
![]() |
Community wiki · C中有哪些耗时的操作? 1 年前 |
![]() |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
![]() |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
![]() |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |