慕姐8265434
你其实问了一个很复杂的问题,牵涉到一个应用程序的生死过程,给你简单讲解如下:(1)一个Windows应用程序的执行过程是:操作系统调用C/C++运行期启动函数->启动函数做完所有初始化工作后->调用应用程序进入点函数(即我们的主函数)(2)而主函数返回时->启动函数便调用C/C++运行期的exit函数。(3)通常我们的主函数有这样一个整型返回值,其意义为:当主函数返回时,这个返回值就会传递给这个exit函数作为参数,exit函数先做完所有清理工作,然后调用操作系统的ExitProcess函数并将返回值传递给它,这使得操作系统能够撤销进程并设置退出代码。通常0表示正常返回,非零的其他值表示出现错误。(4)我们的主函数可以定义为类似void main()这个样子,即无返回值,那么这个时候就不能用return语句把退出代码传递给父进程或操作系统,此时操作系统可以撤销进程但不会设置退出代码。当然在这种情况下,你还是有办法设置退出代码,那就是显式地调用exit(退出代码)。int main(){float a = 1.0;printf("%f", a); // 在标准输出设备(一般为计算机的显示器)上,输出a的值return 0; // 正常返回}