-
您可以將陣列的指標強制轉換為雙位元組短型別。
short* (data[0][0]) 可以將位址更改為兩個位元組的位址,兩個位元組合併後的資料也會是資料的內容。
-
這個想法是將乙個元素向左移動 8 位,然後用另乙個元素來做"bit 或"操作。
-
int main()
c 陣列在建立後無法更改,因此組合數字的想法是將陣列塞入足夠大的空間以形成新陣列。
上面的函式是一種比較簡單的合併方式。
-
您只能使用乙個大的來複製它們。
-
首先,您的輸入不正確,因為'\0'沒有辦法進入它。 a 和 b 的值沒有多大意義。 給你乙個程式,自己看看。
#include
#include
int main()
for(j=0;s2[j] !='\0';j++)s3[i+j]='\0';
printf("%s",s3);}
-
合併陣列的操作取決於合併的規則。
一般流程如下:
1 建立乙個足夠大的目標陣列,以容納兩個陣列的所有元素。 如果規則規定將乙個數字組合成另乙個數字,則必須確保目標陣列具有兩個陣列的空間,否則將超出範圍。
2 遍歷其中乙個陣列並為目標陣列分配乙個值。 如果是將數字合併為另乙個數字的組合,則可以省略此步驟;
3 迭代另乙個陣列,並根據規則將其插入到目標陣列中。
在不同的規則下,合併演算法會有所不同,比如在長度為la的陣列末尾附加乙個長度為lb的b陣列,可以寫成。
int i;
for(i = 0; i < lb; i ++
a[la+i]=b[i];
可以寫入長度為 l 的陣列 a、b,交替合併為 c。
int i;
for(i = 0; i < l; i ++
無論哪種方式,合併的本質都是將 a 和 b 的每個元素分配給目標陣列的相應位置。
-
不使用指標? 不明白是什麼意思,是陣列表示法嗎?
相關回答11個回答2024-06-08這顯然是乙個二維陣列,二維陣列可以看作是一維陣列,for(i = 0; ifor(j = 0; j < n; j++)printf("%d",a[i][j) >>>More