1樓:勵光解芷容
不可以,之所以不可以是因為陣列名是個常量,它的值是陣列首元素地址,即不能將其它值付給這個常量。
可以採用迴圈的方法逐個複製,或者採用另一個同型別的指標(相對於陣列名,指標是變數)指向要複製的陣列,之後就可以採用這個指標訪問之前的那個陣列
2樓:武冰業雁菡
void
main()
;int
b[10];int
i;for(i=0;a[i]!=0;i++)b[i]=a[i];
}如果a[10]=b[10]
那麼僅僅賦了b{}陣列的第11個元素給a陣列的第十一個元素,沒法一次性全部賦給.樓下那個方法也不錯.
3樓:宿唱校流婉
這樣只是陣列b第11個元素賦值給陣列a第11個元素可以這樣
n為你要從陣列b賦值到陣列a的個數
for(i=n;i>=0;i--)
a[i]=b[i];
4樓:長映諫瑩
定義a[4]為一個4列的二維陣列後,a[2]是*(a+2),這裡a是一個指向4個整型的陣列指標;
a[2]也可以理解為&a[2][0],因為陣列a其實只定義了一行,所以&a[2][0]已經越界了,不過在c語言中越界訪問是不會報錯的,所以a[2][0]的地址比a[0][0]的地址偏移了2行,也就是8個整型,也是32個位元組。這樣理解為&a[0][0]+32也可
5樓:宣果彤春
不可以,只能挨個將b
裡面的值賦值到a裡面
inti;
for(i=0;i<(sizeof(b)/sizeof(int);i++)
不過如果你保證了a和b大小一致的話,也可以偷懶memcpy(a,
b,sizeof(b));
微控制器C語言陣列賦值求助,C語言一維陣列賦值方法
陣列只能在定義的時候整體賦值,不能在之後這樣用。所以你只能寫成 uchar frist 5 而不能寫成 uchar frist 5 frist 5 如果你真的要在之後賦值,特別是每個成員不一樣,你只能用迴圈或者手動乙個乙個賦值。或者先把所有值放在另外乙個數值然後memcpy給目標陣列。uchar 你...
在c語言中如何把陣列清空,在C語言中如何把陣列清空
一嘆 c語言貌似沒有把陣列清空的方法啊,或許你可以清除就把它賦值為0,這樣在形式上實現了清楚,不然的話只有動態申請的記憶體可以釋放。 沃英傑 int a 4 1 通過陣列遍歷,逐個賦值為0。定義迴圈變數int i for i 0 i 4 i a i 0 該程式功能為遍歷陣列a,逐個將元素賦值為0,實...
C語言中一維陣列的最長維數是多少?謝謝
的可樂 ansi c89標準中規定,乙個陣列的尺寸 下標 必須是乙個整型常量表示式以便於在編譯時計算大小,而這裡的所謂常量 或者常量表示式的運算結果 一般是指unsigned int。16位編譯器 比如turbo c 中,unsigned int為16位,因此陣列最多32767個資料。32位編譯器 ...