這個有一定規(guī)定的,當這個規(guī)定不是強行的!只是為了要符合大家編程的習慣(也就是編程規(guī)范),畢竟寫程序是為了給別人看的嘛!現(xiàn)在一般有兩種寫法:(一).寫在程序頭 把用到的函數(shù)先聲明,當是沒有定義!之后就寫MAIN函數(shù),這種方法用的人比較多,也不容易出錯?。ǘ?寫在程序尾 所有的函數(shù)不用聲明而直接定義,最后寫main函數(shù)!不過這種方法的缺點是,要保證你當前用到的函數(shù)在此之前已經(jīng)定義! 恩,就這些(只是個人觀點),希望對你有幫助!
成都創(chuàng)新互聯(lián)公司是一家企業(yè)級云計算解決方案提供商,超15年IDC數(shù)據(jù)中心運營經(jīng)驗。主營GPU顯卡服務(wù)器,站群服務(wù)器,四川雅安電信機房,海外高防服務(wù)器,服務(wù)器機柜,動態(tài)撥號VPS,海外云手機,海外云服務(wù)器,海外服務(wù)器租用托管等。
答案:D。
解析:C程序中并不是所有文件里面都需要main函數(shù),A錯誤;
main函數(shù)的位置不是固定的,B錯誤;
C程序中最多只能有一個main函數(shù),C錯誤。
C程序中函數(shù)不能嵌套定義,D正確。
c語言中main函數(shù)的位置可以任意位置。在執(zhí)行一個c語言編寫的程序時,main函數(shù)就相當于是執(zhí)行程序的入口。只要是沒有語法和邏輯上的錯誤,main函數(shù)可以放在任意位置。\x0d\x0aC語言不限定函數(shù)源代碼在源文件中的位置,但是函數(shù)內(nèi)的標識符同函數(shù)外的標識符一樣也必須滿足使用的標識符先聲明后引用的原則。編譯器對于每個編譯單元(源文件)順序掃描源代碼,如果之前遇到過聲明,那么會根據(jù)聲明的內(nèi)容假定它的定義在當前源文件中或者在另外的源文件或庫文件中,這樣不會出現(xiàn)錯誤,否則就會當作未定義的標識符而產(chǎn)生編譯錯誤。所以main函數(shù)用到的標識符,無論是函數(shù)還是變量還是const限定的常量,都要在用到的地方之前聲明(main本身不用聲明),包括庫函數(shù)。標準庫頭文件通常內(nèi)容是一堆extern庫函數(shù)聲明(函數(shù)定義在另外的庫文件中)和預處理命令,為了能夠使函數(shù)的聲明起到作用,必須#include在main函數(shù)之前,否則這些聲明無效,等于沒#include。(#include僅僅是文本包含指令,本身沒有這個限制。)
不需要放在首函數(shù),其實main()和其他函數(shù)都是一樣的,只是啟動程序是會首先調(diào)用它和它的位置無關(guān)。
主函數(shù)可以放在任何位置,不過放在主函數(shù)前面的子函數(shù)不用聲明,但寫在主函數(shù)后面的必須在程序開始進行聲明。例如你的這個問題,你只需在程序開頭加上,void delay();
每個c程序文件都必須有一個main()函數(shù).
當一個程序只能作為另一個程序的子程序的時候,那么該程序沒有主函數(shù)。主函數(shù)的位置不固定, 并且可以調(diào)用程序中的其他函數(shù) , 而其他函數(shù)不可以調(diào)用 main() 函數(shù) 。 函數(shù)中不可以再定義其他的函數(shù)。
1、main函數(shù)是程序唯一入口。也就是說,程序運行時,首先從main函數(shù)開始執(zhí)行。
2、一個程序,必須要有一個main函數(shù),而且也只能有一個main函數(shù)。
擴展資料:
C編譯器允許main()函數(shù)沒有參數(shù),或者有兩個參數(shù)?(有些實現(xiàn)允許更多的參數(shù),但這只是對標準的擴展)。這兩個參數(shù),一個是int類型,一個是字符串類型。第一個參數(shù)是命令行中的字符串數(shù)。按照慣例(但不是必須的),這個int參數(shù)被稱為argc(argument count)。
第二個參數(shù)是一個指向字符串的指針數(shù)組。命令行中的每個字符串被存儲到內(nèi)存中,并且分配一個指針指向它。按照慣例,這個指針數(shù)組被稱為argv(argument value)。
系統(tǒng)使用空格把各個字符串格開。一般情況下,把程序本身的名字賦值給argv[0],接著,把最后的第一個字符串賦給argv[1]?,等等。
參考資料來源:百度百科-main函數(shù)