間違った溶液セグメンテーション障害のC言語の中央(コアダンプ)

  C言語では、任意のオペレーティング命令は、メモリの動作から不可分であるので、そこには、文法コンパイラ操作されていない、それは不正操作のためのメモリの実際の操作で可能であっても、このセグメントは、(エラーセグメンテーションフォールトを生成しますコアダンプ)!ミスを解決するために、我々は最初に間違った場所のセクションを見つけなければなりません。

  プログラムの間違いをどのように見つけますか?

セグメントエラーが、それは実行時エラーが唯一のセクションを発生するまでの間だけ、コンパイル時にエラーを要求しません、文法的な間違いはありませんが、ミスが何行に求められることはありません、あなたが発生する限り、printfの()関数でセグメンテーションフォールトの場所を見つけることができますセグメントエラーは、その後、プログラムはすぐに終了します。

例えば:

printf( "11111 \ N!");
XXXX;
printf( "22222 \ N!");
YYYY;
printf( "33333 \ N!");
ZZZZ;

上記のコードの動作の実行結果が得られた場合:

!11111
!22222
セグメンテーションフォールト(コアダンプ) - >説明の間違いをの登場です「YYYY;」

セグメントエラーは通常、問題へのポインタで、最高の場所は、リストがあなたのリストには何の問題もない論理ビューを描画する場合のミスは、その後、それらは、ポインタの内容を変更することが期待されていないことを確認するために、ポインタの内容をプリントアウトして見つけるために、

エラーを解決するための手順の段落の要約:

1.間違った場所セグメントを見つけることのprintf()関数を使用します

エラーポインタプリントが表示されます2.段落は、戻り値がその期待されていない結果を確認するには、ファイルリストまたはディレクトリを開きます

3.今の結果を再コンパイルするコードを変更

おすすめ

転載: www.cnblogs.com/xdd-sdyp/p/11329281.html