c++語言中,函式的引數和返回值的傳遞方式
c++語言中,函式的引數和返回值的傳遞方式有三種:值傳遞、
指標傳遞和引用傳遞。
以下是「值傳遞」的示例程式。由於func1 函式體內的x 是外部變數n 的乙份拷貝,
改變x 的值不會影響n, 所以n 的值仍然是0。
void func1(int x)
int n = 0;
func1(n);
cout << 「n = 」 << n << endl;// n = 0
以下是「指標傳遞」的示例程式。由於func2 函式體內的x 是指向外部變數n 的指
針,改變該指標的內容將導致n 的值改變,所以n 的值成為10。
void func2(int *x)
int n = 0;
func2(&n);
cout << 「n = 」 << n << endl; // n = 10
以下是「引用傳遞」的示例程式。由於func3 函式體內的x 是外部變數n 的引用,x
和n 是同乙個東西,改變x 等於改變n,所以n 的值成為10。
void func3(int &x)
int n = 0;
func3(n);
cout << 「n = 」 << n << endl; // n = 10
對比上述三個示例程式,會發現「引用傳遞」的性質象「指標傳遞」,而書寫方式象
「值傳遞」。實際上「引用」可以做的任何事情「指標」也都能夠做,為什麼還要「引用」
這東西?
答案是「用適當的工具做恰如其分的工作」。
C 語言中,函式的引數和返回值的傳遞方式
c 語言中,函式的引數和返回值的傳遞方式 c 語言中,函式的引數和返回值的傳遞方式有三種 值傳遞 指標傳遞和引用傳遞。以下是 值傳遞 的示例程式。由於func1 函式體內的x 是外部變數n 的乙份拷貝,改變x 的值不會影響n,所以n 的值仍然是0。void func1 int x int n 0 f...
C語言中的main函式引數及返回值
我們經常看到main函式不帶引數。因此main後都是空括號。main 實際上,main函式必須帶引數,這個引數可以認為是main函式的形式引數。c語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,main函式的函式頭可寫為 main argc,argv c語言還規定...
C語言中scanf 函式的返回值
c語言中簡單的輸入scanf函式和輸出printf函式,我們經常使用,也很熟悉,但有時卻還是會在這兩個地方犯錯。scanf 函式 功 能 執行格式化輸入 用 法 int scanf char format argument,scanf 函式是通用終端格式化輸入函式,它從標準輸入裝置 鍵盤 讀取輸入的...