我正在用gdb调试我的c ++程序.double由于德语区域设置,我很难设置一个简单的变量.
gdb不接受带小数点的值.键入德语小数点(逗号),gdb忽略逗号后的所有内容.
(gdb) p this->foodSupply
$1 = 1
(gdb) set this->foodSupply = 4.3
Ungültige Nummer »4.3«.
(gdb) p this->foodSupply
$1 = 1
(gdb) set this->foodSupply = 4,3
(gdb) p this->foodSupply
$3 = 4
Run Code Online (Sandbox Code Playgroud)
我想我可以通过运行gdb来避免这个问题LC_ALL=EN gdb ....但是因为在我的IDE工作时并不那么容易,我想知道是否还有其他方法.
德国用户如何在gdb中键入小数点?
小智 2
看看这个错误:
https://bugs.launchpad.net/ubuntu/+source/gdb/+bug/1341125
可能会解释为什么它不能像你想要的那样工作。
您可以尝试解决方法,例如
(gdb) set this->foodSupply = (double) 43/10
Run Code Online (Sandbox Code Playgroud)
如果你的数字像 4.3 一样简单。