第一个图片中的就可以
第二个代码就不行
#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的引用
宿主环境入口点只能是main函数,而且只能唯一一个。
嵌入式等非宿主环境入口点则自行定义。
想让两个或以上函数同时执行,涉及到多线程了……
这样的问题就不要发出来了