刚刚切换到lldb,我正在尝试相当于gdb的(lldb) f
frame #0: 0x0000000100000664 a.out`MaxPairwiseProduct(numbers=size=5) + 4 at max_pairwise_product.cpp:19 [opt]
16 // Find max value in vector
17
18 for (int i=1; i<numbers.size(); i++) {
-> 19 if (numbers[i] > numbers[i-1]) {
20 second_max = max;
21 max = numbers[i];
22 if (numbers[i] < max && numbers[i] > second_max)
(lldb)
,因为我在我的代码中的for循环中。
int i
如您所见,(lldb) watchpoint list -b
Number of supported hardware watchpoints: 4
No watchpoints currently set.
(lldb)
已被宣布。
检查我有哪些观察点
(lldb) wa s v i
error: Watchpoint creation failed (addr=0xffffffffffffffff, size=0, variable expression='i').
error: cannot set a watchpoint with watch_size of 0
(lldb)
现在尝试将观察点设置为i(根据lldb reference)我得到了
{{1}}
我不明白为什么会这样,因为变量已被声明。谷歌搜索错误没有多大帮助,因为大多数问题似乎与达到观察点的最大数量有关,这不是我的情况,如上所示。任何帮助将不胜感激!
答案 0 :(得分:0)
我改变了将程序编译为clang++ -Wall -g -o max_pairwise max_pairwise.cpp
的方式,并开始向我显示正确的信息,包括跟踪i