質問編集履歴
1
図を変えた
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
C++にて開発しております。このたびプログラムにてセグメンテーションフォールトが起こってしまったため、原因をつきとめるためにgdbを用いてデバッグを行いました。しかし、gdbで各関数にstep実行しながら該当コードすべてを実行したところ、正常終了にコードの最後まで実行ができました。このようなことに考えられる原因はなんなのでしょうか?
|
2
|
+
|
3
|
+
実行環境はcentosの仮想マシン上です。
|
2
4
|
|
3
5
|
|
4
6
|
|
@@ -8,13 +10,15 @@
|
|
8
10
|
|
9
11
|
参考までにgdbの画面の画像をはります。
|
10
12
|
|
11
|
-
![GDBの図](22a490ddc3b181752887a610a6c4a4ed.png)
|
12
|
-
|
13
|
-
|
14
|
-
|
15
13
|
メモリのエラーのようで、該当の関数もわかっていますが、そこの部分だけテストしてもエラーが出ない。もしくは時々成功する意味がわからない。
|
16
14
|
|
17
15
|
という現状です。
|
16
|
+
|
17
|
+
![GDBの画面](c5dd9a7432b91818c3578bf1cf265884.png)
|
18
|
+
|
19
|
+
上ではrun が成功し、下では失敗しています。
|
20
|
+
|
21
|
+
|
18
22
|
|
19
23
|
エラーが出ている時のコードをのせます。エラーが出ているとしたらたまにこの関数の中で起こっているようです。
|
20
24
|
|