一个源文件中有两个main函数,怎么运行其中一个

第一个图片中的就可以
第二个代码就不行

img

#include

int main01(void)
{

//字符变量用于储存一个单—字符每个字符变量占用一个字节

char ch = '3';

//打印字符型变量

printf("%c\n", ch);

//打印字母a对应十进制数

printf("%d\n", ch);

//unsigned int len = sizeof(ch)
printf("字符型大小: %d\n,"sizeof(ch));

return 0;

}

int mian(void)
{

char ch1='a';
char ch2 ='A';
printf("%d\n", ch1 - ch2);
return 0;

}

您可以稍微了解一下嵌入式设备开发,嵌入式设备在启动时不是从main开始执行,而是start.s的启动引导代码。该代码是用汇编写的,目的是设置存储器、堆栈指针以及中断等,这些处理完之后才具备C语言程序的执行环境,进而通过一个接口跳转到main函数执行。所以说这个main函数只能是唯一的。执行完毕之后再通过汇编代码释放内存。
其次,所有子函数在其作用域内函数名都是唯一的,都不能重名。你的数字0123也都是函数名的一部分,main01并不是main函数。

它首先执行main函数,你的main01,main02相当于普通函数

vs解决方案中一个main建立一个项目,解决方案上点右键,选择启动项目。

再两个函数都没有相互调用,
未定义对main01的引用

img


编译器识别main函数错误

宿主环境入口点只能是main函数,而且只能唯一一个。
嵌入式等非宿主环境入口点则自行定义。

想让两个或以上函数同时执行,涉及到多线程了……


可以查看手册:c++-main 函数 中的内容

这样的问题就不要发出来了