C 語言中函式引數的求值順序是什麼?
我們向一些函式傳遞不同的自變數。現在我們可能會產生一個疑問,即函式引數的求值順序是什麼。是自左向右,還是自右向左?
為了檢查求值順序,我們將使用一個簡單的程式。這裡要傳遞一些引數。透過輸出我們可以查明它們的求值方式。
示例程式碼
#include<stdio.h>
void test_function(int x, int y, int z) {
printf("The value of x: %d
", x);
printf("The value of y: %d
", y);
printf("The value of z: %d
", z);
}
main() {
int a = 10;
test_function(a++, a++, a++);
}輸出
The value of x: 12 The value of y: 11 The value of z: 10
從該輸出中我們可以輕易理解求值順序。首先取 z,因此它持有 10,然後取 y,因此它為 11,最後取 x。因此,其值為 12。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
安卓
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP