回答編集履歴

2

「し」が抜けたのを修正

2020/12/14 02:05

投稿

fana
fana

スコア11658

test CHANGED
@@ -60,13 +60,13 @@
60
60
 
61
61
 
62
62
 
63
- `int *`は,`int`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int`型の値を変えることになる.
63
+ `int *`は,`int`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int`型の値を変えることになる.
64
64
 
65
65
 
66
66
 
67
67
  ダブルポインタでも話は一緒.
68
68
 
69
- `int **`なら,`int*`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int*`型の値を変えることになる.
69
+ `int **`なら,`int*`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int*`型の値を変えることになる.
70
70
 
71
71
 
72
72
 

1

ポインタの話を追記

2020/12/14 02:05

投稿

fana
fana

スコア11658

test CHANGED
@@ -27,3 +27,47 @@
27
27
  }
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ 引数にポインタを渡す例:
34
+
35
+
36
+
37
+ ```C
38
+
39
+ void F( int *p )
40
+
41
+ { *p=777; } //ポインタ値pが指し示す場所の値を変えた
42
+
43
+
44
+
45
+ int main()
46
+
47
+ {
48
+
49
+ int a = 5;
50
+
51
+ F( &a );
52
+
53
+ //ここでのaの値は777になった
54
+
55
+ ...
56
+
57
+ }
58
+
59
+ ```
60
+
61
+
62
+
63
+ `int *`は,`int`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int`型の値を変えることになる.
64
+
65
+
66
+
67
+ ダブルポインタでも話は一緒.
68
+
69
+ `int **`なら,`int*`型の場所を指し示すから,「その指し示す場所の値を変える」というのは,指示されている`int*`型の値を変えることになる.
70
+
71
+
72
+
73
+ 質問のコードでは,ダブルポインタを渡した側では(それが指し示す)ポインタの値を変えている.