Qt Creator调试器不显示char *和wchar_t *变量的文本内容

时间:2013-06-21 12:26:30

标签: c++ debugging qt-creator

Qt Creator不会将char*wchar_t*个变量显示为字符串,而std::stringstd::wstring会正确显示。

例如,此代码:

const char *a = "abcd";
const wchar_t *b = L"abcd";
std::string c = "abcd";
std::wstring d = L"abcd";

debuger的Watch Window显示了这一点:

enter image description here

如您所见,cd显示为文字,但ab被视为常规指针。

是否有可以使其显示char*wchar_t*的设置与显示std::stringstd::wstring的方式相同?

1 个答案:

答案 0 :(得分:3)

您必须记住,char*是指向char的指针。根据定义,它不是字符串;它只是指向char的指针。所以调试器不能真正假设它是一个字符串,除非你明确告诉它。为此,在监视窗口中右键单击它,选择“更改本地显示格式”,然后您可以更改调试器应该只解释这一个变量或所有char*指针的方式。