二次元配列の各要素はスキマなく並んでいるので:
C
1#include <stdio.h>
2
3int main() {
4 int arrayA[3][3] = {{0,1,2},{3,4,5},{6,7,8}};
5 int arrayB[3][3] = {{0,1,2},{3,4,5},{6,7,8}};
6 int arrayC[3][3];
7
8 // C = A + B
9 int* pA = (int*)arrayA;
10 int* pB = (int*)arrayB;
11 int* pC = (int*)arrayC;
12 int i;
13 for ( i = 0; i < 3*3; ++i ) {
14 *pC = *pA + *pB;
15 ++pA; ++pB; ++pC;
16 }
17
18 { // できたかな?
19 int x, y;
20 printf("{");
21 for ( y = 0; y < 3; ++y ) {
22 printf("{");
23 for ( x = 0; x < 3; ++x ) {
24 printf( x == 0 ? "%d" : ",%d", arrayC[y][x]);
25 }
26 printf("}");
27 }
28 printf("}\n");
29 }
30 return 0;
31}
32
33/* 実行結果
34{{0,2,4}{6,8,10}{12,14,16}}
35*/
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。