2010-10-14 74 views
2

我有一些代码GDB打印不一致

int main(int argc, char* key[]) { 
cout << strlen(key[1]) << endl; 

COUT显示4.

现在用gdb

(gdb)print strlen(key[1]) 

显示-147660784
什么是造成这种差异的原因吗?

+0

完全重复的:http://askubuntu.com/questions/27019/strlen-returns-incorrect-value-when-called-in-gdb – karlphillip 2011-03-31 23:59:39

+0

此问题与程序员使用的工具有关,它完全针对主题对于SO(即使它已经在另一个站点上询问)。 – 2011-04-01 07:48:57

回答