① c++中主程序和子程序分別是什麼 舉例說明
剛開始寫可能你覺得子程序沒什麼用
一個程序運行肯定是先運行主程序
我們當然可以把所有程序都寫在主程序裡面,但是你會發現主程序過於龐大,有些程序反復使用,那麼我們就寫一個子程序,當要用這段程序的時候我們就通過調用來解決
比如我一個主程序,裡面一直要用到查找,我們就先寫個子程序把它定義為findtext(int str1,int str2)str1為查找內同 str2為查找目標
然後我們寫主程序,就可以直接用這個子程序
其實在C裡面你可能覺得沒什麼,如果你學過單片機,我們寫程序不用到子程序不行,應為單片機容量有限,如果重復代碼出現就會下不下,所以我們會盡量把所有重復出現的代碼寫成子程序,減少代碼體積
② 微機原理宏操作與子程序,分別在什麼情況下使用好
明白宏和子程序的區別即可
宏和子程序都是為了簡化源程序的編寫,提高程序的可維護性,但是它們二者之間存在著以下本質的區別:
在源程序中,通過書寫宏名來引用宏,而子程序是通過CALL指令來調用;
匯編程序對宏通過宏擴展來加入其定義體,宏引用多少次,就相應擴展多少次,所以,引用宏不會縮短目標程序;而子程序代碼在目標程序中只出現一次,調用子程序是執行同一程序段,因此,目標程序也得到相應的簡化;
宏引用時,參數是通過「實參」替換「形參」的方式來實現傳遞的,參數形式靈活多樣,而子程序調用時,參數是通過寄存器、堆棧或約定存儲單元進行傳遞的;
宏引用語句擴展後,目標程序中就不再有宏引用語句,運行時,不會有額外的時間開銷,而子程序的調用在目標程序中仍存在,子程序的調用和返回均需要時間。
總之,當程序片段不長,速度是關鍵因素時,可採用宏來簡化源程序,但當程序片段較長,存儲空間是關鍵因素時,可採用子程序的方法來簡化源程序和目標程序。