
一个“工程”(若干文件组成的一个整体,目的是为了完成某项任务,这就是一个工程),必须有一个主函数。
主函数的意义在于,它标志着整个工程的入口点,让你写的程序,从这个点开始真正的执行。
所以,一个工程是必须有主函数的。但这个工程中的某一个单独的文件,则可以没有主函数(但至少要有一个文件,有主函数)。
不知表述清楚没有
在DOS下,程序的执行是从main函数开始的。在Windows下,对应的函数是WinMain。但是,如果浏览Hello程序的所有的方法和全局函数,是找不到WinMain函数的。MFC考虑到典型的Windows程序需要的大部分初始化工作都是标准化的,因此把WinMain函数隐藏在应用程序的框架中,编译时会自动将该函数链接到可执行文件中。程序员可以重写WinMain函数,但一般不需要这么做。
下面的程序清单3-1给出了WinMain函数的代码。其中,_tWinMain函数在\DevStudio\Vc\Mfc\src\AppModulcpp中定义,它所调用的AfxWinMain函数在同一目录下的WinMaincpp中定义。名字是_tWinMain函数而不是WinMain,是考虑到对不同字符集的支持,在tcharh中有_tWinMain的宏定义。在ANSI字符集下编译时,_tWinMain就变成WinMain,在Unicode下编译时,_tWinMain就变成wWinMain。
提示:Unicode是具有固定宽度、统一的文本和字符的编码标准。由于Unicode采用的是16位编码,因此可以包含世界各地的书写系统的字符和技术符号(如中文也在Unicode之中),从而克服了ASCII码在表示多语言文本上的不足之处,扩大了ASCII码7位编码方案的好处。Unicode同等地对待所有的字符,并且在表示各种语言的任何字符时既不需要换码序列(escape)也不需要控制代码。Win32和Visual C++很好的支持Unicode字符集。
我在STM32中以前也遇到过,一般就是因为你的DEBUG 配置的问题,首先在KEIL中点击魔法棒,你在DEBUG 中选择RUN TO MAIN,在SETTING 中选择右下方的,verify code download , download to flash 。
首先dos下是main入口,windows下是 WinMain 入口,MFC程序已经将winMain函数封装起来了,所以你找不到。你要了解这部分内容可以参考《深入浅出MFC》。
直接写win32程序,就要用到winmain了。你可以尝试建一个空的win32程序。
因为你没有调用你定义的函数。
C++调用函数的时候不用写返回值和形参。
你在MAIN函数中写的 double round(double k);本质上还是声明,不是调用。
如果要调用直接写round(k);
而且看这个具体例子的话round()函数不需要返回值,建议写成void round(double num);
主函数定义为 int型,但是在主函数结束后没有返回一个整型值,导致编译不通过。
myss函数声明时,行末没有添加";"
在system("pause");后添加return 0;
另外在main函数内连续使用两个以上scanf的时候会导致输入值错误。
建议第一个scanf语句写为scanf("%d%c",&sa);
good luck~!
以上就是关于C语言程序可以没有主函数么 如果可以什么情况下可以没有全部的内容,包括:C语言程序可以没有主函数么 如果可以什么情况下可以没有、为什么我在一个VC++程序中找不到主函数main、程序烧好了单片机(LPC1768)不运行 仿真的时候发现程序没有进main( )函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)