高建波 方芳 趙敏

[摘 要] 使用函數聲明可以避免在主函數之前定義所有的子函數。然而,函數聲明卻有很多細節需要關注,尤其是遇到函數之間嵌套調用時。為深入理解函數聲明,必須清楚程序編譯原理和編譯過程。該文通過一個C++例題的分析,詳細闡述函數聲明與編譯的關系,同時說明養成良好編程習慣的重要性。
[關鍵詞] 函數聲明;編譯;編程習慣
[作者簡介] 高建波,南昌航空大學信息工程學院講師,主要從事計算機科學與技術研究;方 芳,南昌航空大學信息工程學院講師,主要從事計算機科學研究;趙 敏,南昌航空大學信息工程學院講師,主要從事計算機科學研究。
[中圖分類號] G642.0? ? [文獻標識碼] A? ? [文章編號] 1674-9324(2020)23-0135-02? ? [收稿日期] 2019-11-25
一般來說在編程時,子函數的定義可以放在主函數之前,也可以放在主函數之后。將子函數的聲明放在主函數之前,子函數的定義放在主函數之后,可以讓程序顯得更加直觀,這也是良好的編程習慣,而很多編程教學者和初學者并不重視這一點[1]。不好的編程習慣會導致很多錯誤,而這些錯誤在良好編程習慣下會自動屏蔽,因此有必要深入探討函數聲明,尤其是編程中遇到函數之間相互調用和嵌套調用時。為理解函數聲明的重要性,需要考慮編譯器的工作原理及其與函數聲明的關系[2]。
一、函數聲明和編譯
(一)編譯器和編譯
編譯器是C++程序的語法拼寫檢查器,當一個程序被寫好并存儲后,就可以對它進行編譯。這時編譯器程序就會對程序進行詞法分析、語法分析、語義分析和中間代碼生成?!?br>