アプリ版:「スタンプのみでお礼する」機能のリリースについて

Cでプログラムを書いたんですけど、コンパイルは通るが実行すると「セグメンテーション違反です」と出ます。
そこでGDBを用いてデバッグをかけましたけど文字列の中身の見方が分かりません。
つまり、p i とすれば、いまの i の値を出力しますけど、どうすれば文字列 word の中身を見せてくれるか教えてください。
よろしくお願いします。

A 回答 (2件)

No.1 です。



どうやら gdb が2バイト文字を認識していないようですね。

「wordの中には日本語の単語」とのことですが、私は日本語の文字列を扱ったことがないので、gdb で日本語を表示できるかどうかは知りません。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

お礼日時:2006/11/20 18:48

char *word = "abc";



あるいは

char word[] = "abc":

とかなっていたら

gdb> p word
abc
gdb>

というように文字列の中身が表示されると思います。

この回答への補足

回答ありがとうございます。
wordの中には日本語の単語が入ってるんですけど、gdb> p word と入力すると
(gdb) p word
$5 = "\\000\203?\202?000\000\000\000\020\000\000?\032\000М006
のように出力されます。
OSがFEDORAなんですけど、OSのせいでしょうかね?

補足日時:2006/11/19 16:22
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!