それでは、エラーから始めましょう。GDB を実行しているときに、このセグ フォールトが発生し続けます。
#0 0x00000000 in ?? ()
#1 0x0804aacc in find_closest_object (list=0x8052928, base=0xbffff148,
dir=0xbffff130, last_hit=0x0, retdist=0xbffff0f0) at raytrace.c:34
#2 0x0804ab96 in ray_trace (model=0x80528f0, base=0xbffff148, dir=0xbffff130,
pix=0xbffff160, total_dist=0, last_hit=0x0) at raytrace.c:80
#3 0x0804a99a in make_pixel (model=0x80528f0, x=0, y=0) at image.c:29
#4 0x0804aa09 in make_row (model=0x80528f0, y=0) at image.c:47
#5 0x0804aa53 in image_create (model=0x80528f0, out=0x8052788) at image.c:69
#6 0x08048aed in main (argc=3, argv=0xbffff2b4) at main.c:30
したがって、基本的に、?? で 0x00000000 のこの不明なエラーが発生し続けます。それは一体何を意味するのでしょうか?raytrace の 34 行目に次のように書かれています。
dist = obj->hits(base, dir);
問題が何であるかについての手がかりはありますか?必要に応じてさらに投稿できますが、何が必要なのか正確にはわかりません。助けてくれてありがとう!
編集: last_hit は NULL であるはずなので、そうではありません。