C 語言中,函式的引數和返回值的傳遞方式

2021-05-23 23:57:13 字數 794 閱讀 2227

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 函式是通用終端格式化輸入函式,它從標準輸入裝置 鍵盤 讀取輸入的...