28.C言語GDBデバッグ


プログラムの作成に書く順風満帆することはできませんプログラマ、GCCコンパイラの構文エラーは、プログラムコードで見つけることができますが、ビジネスロジックのエラーを見つけることができない、デバッガプログラムは、ソフトウェア開発の要素の一つです。プログラムをデバッグするには、多くの方法がありますが、例えば、ステップprintf文追跡プログラムを実行し、変数の値を表示することができ、この章では、強力なデバッグツールGDBを紹介します。

、GDBインストール

CentOSのシステムは、インストールまたはアップグレードするには、次のコマンドを実行し、ルートサーバとしてログインします。

yum  -y  install  gdb 

すでにGDBをインストールした場合、サーバーは、GDBをインストールしていない場合は、上記のコマンドは、GDBの最新バージョンをインストールすることに注意してくださいは、GDBの最新バージョン、そのため、どんなに上記のコマンドの実装は何回、何の問題に更新されます。

サーバーがインターネットにアクセスしなければならないという条件で、gdbのインストール。

第二に、事前に試運転の準備

GCCコンパイラのソースコードを使用している場合あなたは、コンパイルされたプログラムをデバッグすることができるよう-gパラメータを追加するには、コンパイル時を予定している場合、コンパイルされた実行可能ファイルは、ソースコードが含まれていません。

 gcc -g -o book113 book113.c 

プロンプトコマンドで、GDB book113を入力し、あなたはbook113プロシージャをデバッグすることができます。

 gdb book113 

第三に、基本的なデバッグコマンド

コマンド コマンド コマンド説明
セット引数 メインプログラムのパラメータを設定します。例えば:./ book119 /oracle/c/book1.c /tmp/book1.cパラメータ設定方法:GDB book119(GDB)セットの引数/oracle/c/book1.c /tmp/book1.c
ブレーク B ブレークポイントの設定は、ブレークポイントB 20を使用すると、ブレークポイントを複数設けることができる、提供されたライン20に示します。
ラン R ダウンを実行されたプログラムにブレークポイントではない場合は、プログラムの実行を開始、ブレークポイントまでプログラムを実行すると、停止します。
n個 現在の行のステートメントのステートメントが関数呼び出しの場合は、内部機能の実行を入力しないであろう。
ステップ S 現在の行のステートメントは、ステートメントが関数呼び出しである場合、その関数を入力し、それらの最初の文を実行します。関数はsの第三者が提供する関数ライブラリ関数またはが、であれば何のソースコードが存在しないので、それがある限り、ソースコードが行くことができるように、カスタム関数であれば注意、また、で取得します。
プリント P 変数値の表示は、例えば、P名が表示変数名の値を示しています。
継続する C 次のブレークポイントが検出されるまでプログラムを実行し続けます。
セットVARNAME = V プログラムは、2つの変数があると仮定すると、変数の値を設定します;文字名[21]; int型IIは、セットII = 10 IIは、10の値であり、セットの名前=値の「美しさ」名「美しさ」を、注目strcpyのではありません。
終了する Q GDB環境を終了します。

コンテキストGDBに、GDB実行コマンドは上下のカーソルキーで選択されてもよいことに留意されたいです。

第四に、宿題

GDBデバッグのプログラマは、各コマンドの使用方法を見つけ出す、それを試して、方法を習得しなければなりません。

九、著作権表示

C言語Technology Networkのオリジナルの記事、論文、著者と元にソースリンクを明記してくださいを再現。
出典:C言語テクノロジーネットワーク(www.freecplus.net)
著者:倫理コード農業

記事の誤字、またはコンテンツのエラー、またはその他の提案やコメントは、正しい私にメッセージをお願いした場合、どうもありがとうございました!

公開された29元の記事 ウォンの賞賛2 ビュー662

おすすめ

転載: blog.csdn.net/m0_45133894/article/details/104656682