c選擇題陣列名作為函式的引數傳遞的是請舉

2021-03-03 21:41:41 字數 1817 閱讀 4284

1樓:匿名使用者

答案是b;

int a[5] = ;

a就是數

組名,也是a[5]的第一個

元素即a[0]的地址。

#include

int add(int b)

int main(void)

;sum = add(a);

}add(a)這裡傳遞的

內就是陣列a的首容地址,也就是陣列名。

2樓:倒黴熊

b、陣列首元素的地址

這個沒有好舉例的吧 c++就這樣規定的

3樓:匿名使用者

b、陣列首元素的地bai

址void fun(char b);在函式內部你是du不能改變b的指向的

zhi,因dao為陣列引數預設是const指標。專等同於void fun(const char* b);void fun2(char *b);這個在函式屬內部是可以改變b的指向的,因為引數宣告的時候是一般的指標。

陣列名作為函式的引數屬於什麼傳遞為什麼

4樓:匿名使用者

屬於地址傳遞。

因為陣列名的本質是一個地址常量。

字串是字元陣列,我們在scanf()中,輸入字串時,不需要用取地址符&,因為字串變數名本身是地址。

如:char name[20];

scanf("%s",name);即可。

5樓:匿名使用者

陣列名作為函式引數時屬於地址傳遞,陣列名本身就相當於一個地址常量。

6樓:栁児

c語言的引數傳遞都是值傳遞,所謂地址傳遞不過是一個地址的值

c語言中,陣列名作為函式引數,屬於什麼傳遞,為什麼?

7樓:行了我

c語言中,陣列名作為函式引數,屬於陣列引數傳遞。在vb6.0中,允許使用陣列作為實參傳遞到子過程的形參中,陣列傳遞必須採用地址傳遞的方式來傳遞引數。

陣列型變數名本身只是該陣列所佔儲存空間的首地址,函式呼叫時,系統不會為形參分配陣列儲存空間,而是僅僅分配一個存放陣列地址(第一個元素地址)的儲存空間,此後,將實引數組的首地址傳遞給形參變數。

8樓:膽市倨

屬於地址傳遞,在函式裡修改的話,將直接影響呼叫方的數值。這是因為陣列名代表這個陣列的首地址,不過是靜態不可更改的而已。在函式裡用引用[i]下標時,就是找到這個陣列第i號元素的地址進行修改的。

所以是第於是地址傳遞。

9樓:匿名使用者

你要記住,所有傳遞給函式的引數都是通過值傳遞方式進行的。陣列名作為函式引數也不例外。

c++的陣列傳遞進函式時,明明是值傳遞,為什麼還是會對原來的陣列產生改變?

10樓:匿名使用者

你傳進去的是陣列,其實陣列相當於指標,陣列名就是這些元素的首地址,所以相當於你傳了一個指標!當然會對陣列產生改變!

11樓:匿名使用者

#include

using namespace std;

void setarray(char s2)int main()

{char s="hello world";

setarray(s);

cout

12樓:護戒之淼

傳的什麼都不會變的啊

setarry只是在函式內部操作

你要想改變要麼就地址傳或者引用傳值

c語言程式設計 用陣列名作函式引數,編寫對一維陣列求平均值的

include include include float b float arr,int n 少了函式宣告 void main printf 平均值是回 f b a,n 個函式傳的答是陣列的首地址 float b float arr,int n c sum n return c 函式在前面沒有宣告...

高等數學可導點的選擇題,高數選擇題 判定函式在x 0這點的可導性。如下圖所示

這裡涉及一個在 x 0 處不可導的函式 g x x 與一個可導函式 h x 之積,所以 f x 在 x 0 處不可導 而容易驗證 f x 在 x 1 的左右導數存在且相等,所有選 b。高數選擇題 判定函式在x 0這點的可導性。如下圖所示 因為cosh最大值為1,1 cosh是大於等於零的,所以只能從...

C語言的一些選擇題

sum pad 5 pad sum pad 5 sum 6pad pad 6 pad pad 7 printf d n pad 7sum 是先返回sum的值然後sum 1 sum是sum 1然後返回sum的值,加過1後的第二題c a 不能void 2 不能在第一個字母 d 號不能出現 11 一個演算...