回答編集履歴

4

回答修正:体裁を修正

2017/02/01 04:50

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- たぶん、質問者さんのコードは int x;と宣言されていると思います。
5
+ たぶん、質問者さんのコードはこのように int x;と宣言されていると思います。
6
6
 
7
7
 
8
8
 
@@ -14,17 +14,15 @@
14
14
 
15
15
  set = fopen("set","r");
16
16
 
17
- fscanf(set,"%d",x);
17
+ fscanf(set,"%d",x); // ←ここ
18
18
 
19
19
  fclose(set);
20
-
21
-
22
20
 
23
21
  ```
24
22
 
25
23
 
26
24
 
27
- fscanf の第3引数でxを渡していますが、ここではxのアドレス(ポインタ)を渡す必要があります。
25
+ fscanf の第3引数でxを渡していますが、以下のように**xのアドレス(ポインタ)**を渡す必要があります。
28
26
 
29
27
 
30
28
 
@@ -36,7 +34,7 @@
36
34
 
37
35
  set = fopen("set","r");
38
36
 
39
- fscanf(set,"%d",&x);
37
+ fscanf(set,"%d",&x); // ←ここ
40
38
 
41
39
  fclose(set);
42
40
 
@@ -44,7 +42,13 @@
44
42
 
45
43
 
46
44
 
45
+ ----
46
+
47
+
48
+
47
- xの型がint*であった場合(以下コードのような場合)は上の回答はすみませんが用をなしません。
49
+ xの型がint*であった場合(以下コードのような場合)は
50
+
51
+ 上の回答はすみませんが用をなしません。原因は別にあります。
48
52
 
49
53
 
50
54
 

3

回答誤記修正:\(\.\.\.昼飯直後は指がまともに動かない。。。\)

2017/02/01 04:50

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,4 +1,4 @@
1
- 質問には現象再現可能な最低限のコードは全て書きましょう。
1
+ 質問には現象再現可能な最低限のコードは全て書きましょう。
2
2
 
3
3
 
4
4
 

2

回答誤記修正

2017/02/01 04:43

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- たぶん、質問やサンのコードは int x;と宣言されて何時と思います。
5
+ たぶん、質問者さんのコードは int x;と宣言されていると思います。
6
6
 
7
7
 
8
8
 

1

回答追記

2017/02/01 04:42

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -40,6 +40,28 @@
40
40
 
41
41
  fclose(set);
42
42
 
43
+ ```
43
44
 
44
45
 
46
+
47
+ xの型がint*であった場合(以下コードのような場合)は上の回答はすみませんが用をなしません。
48
+
49
+
50
+
51
+ ```C
52
+
53
+ int y;
54
+
55
+ int *x = &y;
56
+
57
+ FILE *set;
58
+
59
+ set = fopen("set","r");
60
+
61
+ fscanf(set,"%d",x);
62
+
63
+ fclose(set);
64
+
45
65
  ```
66
+
67
+