質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

2回答

934閲覧

C言語 デバッガの使い方を学びたい(今までちゃんと使ったことがない)

nrhk

総合スコア14

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2017/07/15 10:26

C言語 デバッガの使い方を学びたい(今までちゃんと使ったことがない)

<夏休みの目標>
ちゃんとデバッガを使えるようになる

今まで、C言語で開発するとき、printfで凌いできましたが、
これからはちゃんとデバッガを使いたいので
よいエントリーポイントを探しています。

ブログや雑誌で、断片的に読み漁るより、
本を一冊しっかり読んだ方が良いかとおもったけれど、
そもそもデバッグの本があまりない、または古い。

古くても、まずはしっかり読むべきでしょうか。
例えばこれとか
・実践デバッグ技法
・デバッグの理論と実践


環境 Linux
言語 C言語
経験 C言語 実質3年くらいだと思う。
Ruby, VB, あれこれ
15年くらい前の情報系卒だが、
ユーザ部門がながく、開発部門は最近になって。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

デバッガもIDEに搭載されたビジュアルなものやGDBのようなコマンドラインで実行するものもあります(まあ、GDBをバックエンドにしてビジュアルなものもありますが)。
まず取っ掛かりを得たいならば、本やオンラインマニュアルをまず読むでしょうか。

古くても、まずはしっかり読むべきでしょうか。

GDBなど古くから使われているデバッガであれば、操作等は基本的には変わらないので、初めて使うのでしたら古い書籍でも十分です。新しい機能など、書籍でカバーしきれていないところは別途オンラインマニュアル等で調べるでいいと思います(それを「知識」として蓄えていけばいいです)。例えば、GDBですと、「GDBデバッギング入門」がありますが、初めて使うのでしたら、これで十分だと思います(まあ、有名所の本なので、すでに見ているかもしれませんが)。
デバッグ技法や理論もそういう意味では古くても基本的なところは変わっていないと思います。そもそも、**「間違ったところを見つけ出す」**ことからデバッグが始まるので、発見アプローチはそう変わらないと思います(そのアプローチを実現するツールの一つとしてデバッガがあるわけですし)。

新し目のデバッガなどについては、すいません、使ったことがないので何とも言えません。ただ、前述の通り、デバッガはツールの一つなので、発見的アプローチに関しては変わらないものと思います。

投稿2017/07/16 00:46

archiver

総合スコア1557

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こんにちは。

確かに言われてみるとデバッガの解説ってあまり見かけないですね。
結局、デバッガはお手軽デバッグの時には非常に有効なのですが、タイムクリティカルな時や大量な出力を確認したい時など、本格的なデバッグ時にはあまり役に立たないからかも知れません。

デバッガの使い方は、そのマニュアルに本来書いてあるべきことなのでマニュアルが充実しているデバッガで勉強するのがベストなように感じます。
その意味では、Visual StudioやC++Builder等の有償のものが充実していると思います。

しかし、Linuxの有償デバッガを把握していません。
QtCreatorは有償ですが、マニュアルは英語だった気がします。
日本Qtユーザー会に詳しい方がいらっしゃるのでQtユーザー会のメーリングリストで質問すれば返ってくるだろうと思います。

一般ではcode::Blocksが比較的使用者が多いようです。英語になりますが、本家stackoverflowで質問すれば回答が返ってくるだろうと思います。
残念ながら、日本語情報は少ないです。私もほんの少しだけ書いてます

GDB直接についてはごめんなさい。把握してません。そもそも使ったことないです。マルチ・プラットフォーム開発やWindows開発が主なので必要な時はVisual Studioを使ってます。

投稿2017/07/15 11:19

Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nrhk

2017/07/16 00:12

回答、ありがとうございます。 近くの図書館にあったので、まずは、「デバッグの理論と実践」を 読んで、座学に励みたいと思います。 ご紹介いただいたcode::Blocksも調べてみたいと思います。 リンク先もちゃんと読んでみます。 Windowsを対象とした開発はほぼゼロなので、 良さそうだとは思いますが、Visual Studioは、適用不能です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問