C語言中主函數的作用是什麼?
函數不就是用來被調用的嗎,主函數本身不能被調用,那它的作用是什麼呢
最佳回答:
准確地說是編譯器為可執行文件加上了一個啟動例程,ELF頭部的入口地址就指向該啟動例程,然後在啟動例程中有下面一句:80482fc: e8 c3 ff ff ff call 80482c4 <__libc_start_main@plt>通過它調用C庫的_libc_start_main,再調用我們的main由於main函數是被啟動例程調用的,所以從main函數return時仍返回到啟動例程中,main函數的返回值被啟動例程得到,如果將啟動例程表示成等價的C代碼(實際上啟動例程一般是直接用匯編寫的),則它調用main函數的形式是:exit(main(argc, argv));
查看更多答案>>