回答編集履歴

2

追加

2017/01/24 08:13

投稿

A.Ichi
A.Ichi

スコア4070

test CHANGED
@@ -43,3 +43,37 @@
43
43
 
44
44
 
45
45
  ```
46
+
47
+
48
+
49
+ int (*arp)[10];arp1は、intの配列(要素10)へのポインタなので、代入の場合キャスト(int (*)[10]) intの配列(要素数10)でポインタに変換する。
50
+
51
+
52
+
53
+ ```c
54
+
55
+ int main() {
56
+
57
+
58
+
59
+ char ii[4] = "GHYU";
60
+
61
+ char *qq = ii;
62
+
63
+ char **pp = &qq;
64
+
65
+ int array[4][10]={{1,2,3,4,5,6,7,8,9,0},{10,11,12,13,14,15,16,17,18,19}};
66
+
67
+ int (*arp)[4][10] = (int (*)[4][10])array;
68
+
69
+ printf("%d \n", (*arp)[0][5]);
70
+
71
+ }
72
+
73
+
74
+
75
+ ```
76
+
77
+
78
+
79
+ 実は[この方のページ](http://kmaebashi.com/programmer/pointer.html) を参考とさせて頂いています。

1

追加

2017/01/24 08:13

投稿

A.Ichi
A.Ichi

スコア4070

test CHANGED
@@ -36,4 +36,10 @@
36
36
 
37
37
 
38
38
 
39
+   char **p = (char **)(*q)[1];
40
+
41
+ printf("%s \n",p);
42
+
43
+
44
+
39
45
  ```