
【計】 calling convention
transfer
【計】 C; call; calls; invoke
appoint; arrange; engage; plight; promise
【計】 convention
調用約定(Calling Convention)是編程中定義函數調用時參數傳遞、堆棧管理和寄存器使用規則的技術标準,英文術語為"Calling Convention"。它确保不同模塊或編譯器生成的目标代碼能夠正确交互,核心作用包括參數順序控制、堆棧平衡維護和寄存器資源分配。
從漢英對照角度,調用約定的關鍵要素可拆解為:
典型調用約定類型包括:
該術語在系統編程中具有重要實踐價值,開發混合語言程式或逆向工程時需嚴格遵循目标平台的調用約定規範。權威參考資料建議參閱《計算機程式的構造和解釋》(Structure and Interpretation of Computer Programs)第4章關于過程抽象的論述,或查閱 LLVM 編譯器官方文檔中的調用約定實現細節。
調用約定(Calling Convention)是編程中定義函數調用時參數傳遞、棧管理、返回值處理等規則的協議,确保不同代碼模塊或編譯器生成的代碼能正确交互。以下是核心要點:
調用約定主要規定以下内容:
__cdecl
)或被調用函數(如__stdcall
)清理棧内存。__fastcall
)。__cdecl
printf
)。__stdcall
__fastcall
**
__cdecl
需調用者清理棧,可能生成更大代碼。__stdcall
,而Linux默認遵循__cdecl
。// __cdecl 示例(調用者清理棧)
int __cdecl add(int a, int b) { return a + b; }
// __stdcall 示例(被調用者清理棧)
int __stdcall sub(int a, int b) { return a - b; }
通過合理選擇調用約定,可優化程式性能、内存使用及跨模塊協作效率。實際開發中需結合編譯器選項和庫要求進行配置。
阿貝正弦條件次高音歌手單絲法律争執發生熱量的分攤折舊幹落葉松蕈告發者公司登記執照灌注擴張器孤獨癖果實學行優先形式回盲隱窩交換資料膠狀小體即刻交貨盡義務近中緣類馬鍊球菌邏輯數據庫級氯肉桂醛氣凝膠起泡發酵薩耳科維奇氏試驗失利用性的輸入狀态哇哇叫的尾礦分級機