5

C++ コードの問題を見つけようとしていて、Sun マシンで DDD を使用してデバッグしています。私たちが持っているいくつかの標準に従って、文字列を使用する必要があります。しかし、DDD が文字列変数に遭遇すると、常に空として表示されます。以前、SGI で CVD を使用したときに同じ問題が発生したことを思い出したいと思います。
コードを書き直して文字列を削除する以外に、試したり使用したりできるものはありますか?

4

3 に答える 3

1

こちらをご覧ください

彼らは、gdbで使用できるヘルパー関数を実装することでそれを解決します(gdbを使用するためDDDでも機能するはずです)

于 2010-02-03T17:06:46.037 に答える
1
p variablename.c_str()

また

display variablename.c_str()
于 2010-02-03T17:11:28.343 に答える
0

基本的に、メモリ アドレスを渡すことによって、文字列を出力するラッパー関数を作成する必要があります。

void gs(string &s) { cout << s << endl; }

そしてgdbで:

call gs(somevariable)

参照

于 2010-02-03T17:12:12.110 に答える