1樓:匿名使用者
int b1 = 是合法的,系統會自動給陣列b1分配3個整型數的空間大小,因為它是一維陣列,大小可以由後面確定。
int b2=; 它是二維陣列,我們至少需要定義它的最高維的大小。也就是至少是b2[4],想想你什麼都沒定義,我怎麼通過後面的賦值來判斷b2陣列是幾行幾列呢?
最後兩組是指標,相信看看指標就會知道,指標是指向記憶體的地址,第一個指標p1是指向一維陣列的指標,大小也是由後面確定的。相當於int p1 = 指標初始化時值為空。第二個應該是指向二維陣列的指標,但這樣定義肯定是不對的,因為你還是把它當一維來看,正確的應該是int (*p2)[4] = new int[3][4] 或者int** p2 = new int[3][4]。
2樓:小北娃
純語法問題。建議好好看下c++語法書。
int b2=; //這樣就不可以?
因為是二維陣列,所以不可以。
int *p2=new int[3][4]; //這樣就不可以?
因為是二維陣列,所以要賦值給二級指標。比如 int** p2就可以了。
c++關於陣列的賦值與初始化的問題
3樓:匿名使用者
char a="dsaf" ; //在陣列定義時進行資料初始化。 這是一種規定格式,只有在此處時,這樣寫是對的!
a="dsaf" ; //當a是陣列時,陣列名a表示的是地址值(相當於一個常量),是不允許改變的,賦值操作是不允許的!
4樓:左灬王
首先a你沒定義= =你就定義了a 在定義字串時初始化可以省略【】中間的數字
也可以下次初始化
你可以這樣 char a[5];a[5]="dsaf"
c++如何為陣列成員在初始化列表裡初始化
5樓:匿名使用者
如果你一定要在初始化列表中初始化,可以這樣做,就是麻煩了些:
class a
;public:
a(int n):a0(n){}};
6樓:
class a
}注:陣列可以用大括號初始化,且不會出warning。如:
class a}
7樓:
初始化類表初始化的是類的成員,你這個類中的成員是a,而不是a[0]
所以不行
8樓:匿名使用者
a(int n)
跪求C 中物件陣列初始化程式設計小問題
include include using namespace std class student student student student student int nage,const char lpszname student student void student setmember ...
C 如何用fill初始化二維陣列
c 中用new動態建立二維陣列的格式一般是這樣 type p n new type n 其中,type是某種型別,n是二維陣列的列數。採用這種格式,列數必須指出,而行數無需指定。在這裡,p的型別是type n 即是指向一個有n列元素陣列的指標。還有一種方法,可以不指定陣列的列數 int p p ne...
c語言程式 定義二維陣列int m 3並初始化,完整題目如下
include int main void file fp 寫入操作 fp fopen data w 以只寫方式開啟檔案 fwrite m,sizeof m 1,fp 寫入資料 fclose fp 關閉檔案 開啟操作 int newm 3 3 int i,j fp fopen data r 以只讀方...