• ベストアンサー

セグメンテーション違反

C言語を使用しています。 構造体に値をいれようとしたら、コンパイルは出来るのですが、実行時に 「セグメンテーション違反です (core dumped)」 となってしまい、それ以上行えません。 構造体と代入したい変数との型は、合っています。 いろいろ本などで見ましたが、何が原因かわからず困っています。 教えてください。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.2

OSは何でしょうか。コンパイラは何を使用していますか? 通常、デバッグオプションをつけて実行すると、異常の発生したソースの箇所で止まりますので、それが手がかりになります。またNo1の方が言われてますように、ソースが公開できるのであれば、ソースを提示するのが良いかと思います。

hyuruli
質問者

お礼

デバックをつけて、おかしいところを調べましたところ、やはり、すごく苦手なポインタと構造体を使っているところでした。 何とか、直すことが出来ました。 どうもありがとうございました!

hyuruli
質問者

補足

ありがとうございます。 OSはLinuxで、コンパイラは、そのLinuxについていたものです。 デバックを付けて、以上個所を調べてみようと思います。 ソースは、私の勝手で申し訳ないのですが、書くことが出来ません。すみません。

その他の回答 (1)

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

> 「セグメンテーション違反です (core dumped)」 多くの場合、プログラムの中で確保していないメモリの領域の値を取得/設定しようとした場合に発生します。 配列とか、ポインタとか使用していますか? あとは、質問者さんの環境、実際のソースコードがわかれば具体的なデバッグ方法を提示できるかも知れません。

hyuruli
質問者

お礼

ありがとうございます。 メモリ領域の問題が多いみたいですね。 配列、ポインタ共に使用しています。しかし、私はポインタに弱いので、そちらの方で何か間違っているのではないかと思います。 見直してみます。 ソースは書くことが出来ません。教えて頂いているのに、申し訳ありません。 ありがとうございました。

関連するQ&A

専門家に質問してみよう