為什麼inta323為什麼可以,而inta3不可以

2021-03-07 00:57:41 字數 3014 閱讀 2308

1樓:匿名使用者

第乙個陣列你是定義了陣列的長度為3,無論你裡面的值是多少他都為你 分配3個記憶體

而後面你同樣定義了了陣列的長度,但賦值確是空也就是null值

2樓:匿名使用者

陣列定義可以賦值,也可以不賦值,但不能賦空值。

3樓:彭藉松長

應當是這bai

樣寫的吧,int

a[2][2]=,};

這是對其初

du始化,而zhi它又是個二維數dao組,以行初始化,第回乙個花答括號中的就是第一行的,第二個花括號是第二行的,所以a[0][0]為1,而a[0][1]確沒有給值,並不代表沒有值,在c中預設為0;所以a[0][1]為0;

4樓:滑映寒愈霽

應當是這樣

抄寫的吧,int

a[2][2]=,};

這是對襲其初始化,而它又是個二維陣列,以行初始化,第乙個花括號中的就是第一行的,第二個花括號是第二行的,所以a[0][0]為1,而a[0][1]確沒有給值,並不代表沒有值,在c中預設為0;所以a[0][1]為0;

5樓:實攸慄燕

不行,宣告陣列,

內部須是數字常量

不過新的c99標準,支援可變長陣列,或許可以比如size=6

inta[size];

int a[2][3]={{1},{2},{3}};和int a[ ][3]={{1},{2},{3

6樓:匿名使用者

int a[2][3]=,,}; // 這是復

制錯誤的,,,表明,該陣列有3行,但宣告的是2行。vc 6.0中的錯誤資訊是: error c2078: too many initializers

int b[3]=,,}; // 這是正確的,因為第一維未宣告,根據初始化表編譯程式可以計算出第一維是3,等同於int b[3][3]=,,};

7樓:

int a[ ][3]=,,}; 這個是du正確的,編譯器會zhi根據初始化列表dao計算出第一內維的長度

int a[2][3]=,,};這容個是錯誤的,初始化列表裡的3組括號說明這個陣列是3行(第一維是3),超過定義的長度了

為什麼int a[]={1,2,3,4,5}是對的,而int*p={1,2,3,4,5}是錯的?求解釋

8樓:匿名使用者

int a=實際上是bai用初始

化空間du後,分配給a ;int*p這個定zhi義根據daoansi c++的規定p為指標,必須內顯式為其分配空間,否則容p指向的未知不定。

二者的差異是ansi/iso c++規範決定的。

9樓:

前面定義的來整型陣列,沒錯;

第二個自定義的是乙個整型指標變數,但是你給它初始化了5個值,而它只能指向乙個整型的變數,所以編譯錯誤;

你可以這樣定義:

int a=;

int * p =a;

10樓:滬上新視界眼科

個人看法:誤解bai了指標和

du陣列的關係!數

zhi組int a和指標 int *p中,daoa和p是可以賦值的回!即p=a成立。但是,答不準確的說,int a代表的是乙個起始位址,這個位址儲存在a中;int *p代表的是乙個整形變數!

不能用{}賦值。

11樓:匿名使用者

int a;

int *p = &a; //宣告乙個指標後面是要跟乙個位址的。

指標有指標的初始化方法,陣列有回

陣列的,要牢記,不能混淆答

你可以參考這個

12樓:匿名使用者

第乙個int a說明a是乙個陣列,裡面存放的是整形變數,而第二個int *p說明p是乙個指向整形變數的指標,只有乙個整形空間,準確的說這二個定義時所擁有的記憶體空間就不相同。

13樓:匿名使用者

對陣列來說,這樣的初始化是對的,但對指標來說,它初始化的是位址,舉個例子 char * p=「string」,它不是指的是* p=「string」,而是p等於這個字串的首位址 。

14樓:匿名使用者

*p為指標,p中儲存的是位址,你為位址初始化陣列元素顯然是不正確的

15樓:匿名使用者

前面是 int型別的陣列 當然無錯

後面你是想表達 指標型別? 那你後面大**裡面又是int··

int a[2][3] ,*p[3] ,p=a為什麼是錯的 p[o]=a是對的

16樓:匿名使用者

語句整理如下:

int a[2][3] ,*p[3];

/*a[2][3]二維陣列;*/

/*p[3]指標陣列(注意:不是陣列指標)*/a可以作為位址

17樓:黃邦勇帥哥哥

要想使抄p=a正確,請使用

襲int (*p)[3];的宣告,該語句表bai示,指標p是乙個指向含有三個元du素的zhi一維陣列dao的指標。而a[2][3]中的陣列名a,表示的是指向二維陣列第一行中含有3個元素的陣列的指標,因此可以對其賦值。陣列名不是像一樓說的a是指向的a[0][0],而是指向的a[0]也就是說a表示的是a[0]的位址&a[0]。

因為a=a+0,因此a+1指向的是a[1]的位址,即&a[1]。指向a[0][0]的是a[0]也就是說a[0]本身就是乙個位址,你可以輸出a[0]就知道了。而*a[0]就能輸出a[0][0]的值。

即a[0]指向的是&a[0][0]

*p[3]表示的是宣告的乙個指標陣列,在這個陣列中的每乙個成員都是乙個指向int型的指標,因此只能對p[0]賦於int型變數的位址,比如int i=1; 則可以使用p[0]=&i來賦值。同樣可以使用p[0]=a[0];或者p[0]=&a[0]

鏡子為什麼可以成像,謝謝鏡子為什麼可以成像,謝謝

太陽或者燈的光照射到人的身上,被反射到鏡面上 漫反射,屬於平面鏡成像 平面鏡又將光反射到人的眼睛裡,因此我們看到了自己在平面鏡中的虛像。這才是平面鏡對光的反射 照鏡子就是這樣的原理。可以說,只要利用到平面鏡,就一定是反射。平面鏡中的像是由光的反射光線的延長線的交點形成的,所以平面鏡中的像是虛像。虛像...

牡蠣為什麼可以自由變換性別,牡蠣為什麼可以變性?

營養條件優越時,牡蠣長得大而肥,刺激卵原細胞形成和生長,抑制精原細胞形成,結果使雌性牡蠣比率增高 營養條件不是決定牡蠣性別的因素,而是由於雄性先熟現象所導致 來自桃花島開朗大方的龍牙花 牡蠣多雌雄異體,但也有雌雄同體者。食用牡蠣 ostrea edulis,即歐洲平牡蠣 能按季節或隨水溫的變化而改變...

為什麼磁鐵可以相互吸引為什麼磁鐵可以吸

鄭州科瑞耐火材料 由磁鐵的特性決定的 如果按原子電流解釋就是電流產生的磁場磁化別的物體 磁化物體產生電場 電場互相作用產生力的作用。物質大都是由分子組成的,分子是由原子組成的,原子又是由原子核和電子組成的。在原子內部,電子不停地自轉,並繞原子核旋轉。電子的這兩種運動都會產生磁性。但是在大多數物質中,...