質問編集履歴

2

意図的に内容を抹消する行為にあたるため

2021/02/15 03:11

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- c言語にての質問
1
+ c言語でアドレス先の数値を参照するとき発生したエラーの意味を教えてくださ!!
test CHANGED
@@ -1 +1,67 @@
1
+ C言語でポインタ変数の使い方について学んでいる最中です。Xcodeで以下のようなソースコードを打ったところ、エラーが発生してしまいました。エラーの内容と解決方法について教えてください。
2
+
3
+ ソースコード↓
4
+
5
+ #include <stdio.h>
6
+
7
+ int main()
8
+
9
+ {
10
+
11
+ int a = 123;
12
+
13
+ int b;
14
+
15
+ int *p;
16
+
1
- 解決できました。どうやら変数bにアドレスを入れたことがダメでbをポインタ変数宣言すれば解決しました
17
+ printf("aのアドレスは %d \n",&a);
18
+
19
+ printf("bに代入 => ");
20
+
21
+ scanf("%d",&b);
22
+
23
+ p = b;
24
+
25
+ printf("\n");
26
+
27
+ printf("aの値は %d \n",a);
28
+
29
+ printf("bの値は %d \n",b);
30
+
31
+ printf("pのアドレスは %d \n",&p);
32
+
33
+ printf("pの値は %d \n",p);
34
+
35
+ printf("*pの値は %d \n",*p); ← エラー場所
36
+
37
+ }
38
+
39
+ エラーメッセージ ↓
40
+
41
+ Thread 1: EXC_BAD_ACCESS (code=1, address=0xffffffffefbff41c)
42
+
43
+ 実行モニター(右画面)↓
44
+
45
+ aのアドレスは -272632804
46
+
47
+ bに代入 => -272632804
48
+
49
+ aの値は 123
50
+
51
+ bの値は -272632804
52
+
53
+ pのアドレスは -272632816
54
+
55
+ pの値は -272632804
56
+
57
+ (lldb)
58
+
59
+ 左画面(使い道はよくわからない)↓
60
+
61
+ b int -272632804
62
+
63
+ p int * 0xffffffffefbff41c
64
+
65
+ a int 123
66
+
67
+ 某動画配信サービスではこのプログラムで普通に動いていたようです。これはXcode特有で発生するエラーでしょうか?このエラーを解除する方法などがあればご教授いただきたいです。

1

解決しました

2021/02/15 03:11

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- c言語でアドレス先の数値を参照するとき発生したエラー意味を教えてください!!
1
+ c言語について質問
test CHANGED
@@ -1,83 +1 @@
1
- C言語でポインタ変数の使い方について学んでいる最中です。Xcodeで以下のようなソースコードを打ったところ、エラーが発生してしまいました。エラーの内容と解決方法について教えてください。
2
-
3
-
4
-
5
- ソースコード↓
6
-
7
- #include <stdio.h>
8
-
9
-
10
-
11
- int main()
12
-
13
- {
14
-
15
- int a = 123;
16
-
17
- int b;
18
-
19
- int *p;
20
-
21
- printf("aのアドレスは %d \n",&a);
1
+ 解決できました。どうやら変数bにアドレスを入れたことがダメでbをポインタ変数宣言すれば解決しました
22
-
23
- printf("bに代入 => ");
24
-
25
- scanf("%d",&b);
26
-
27
- p = b;
28
-
29
- printf("\n");
30
-
31
- printf("aの値は %d \n",a);
32
-
33
- printf("bの値は %d \n",b);
34
-
35
- printf("pのアドレスは %d \n",&p);
36
-
37
- printf("pの値は %d \n",p);
38
-
39
- printf("*pの値は %d \n",*p); ← エラー場所
40
-
41
- }
42
-
43
- エラーメッセージ ↓
44
-
45
- Thread 1: EXC_BAD_ACCESS (code=1, address=0xffffffffefbff41c)
46
-
47
-
48
-
49
- 実行モニター(右画面)↓
50
-
51
- aのアドレスは -272632804
52
-
53
- bに代入 => -272632804
54
-
55
-
56
-
57
- aの値は 123
58
-
59
- bの値は -272632804
60
-
61
- pのアドレスは -272632816
62
-
63
- pの値は -272632804
64
-
65
- (lldb)
66
-
67
-
68
-
69
-
70
-
71
- 左画面(使い道はよくわからない)↓
72
-
73
- b int -272632804
74
-
75
- p int * 0xffffffffefbff41c
76
-
77
- a int 123
78
-
79
-
80
-
81
-
82
-
83
- 某動画配信サービスではこのプログラムで普通に動いていたようです。これはXcode特有で発生するエラーでしょうか?このエラーを解除する方法などがあればご教授いただきたいです。