How to "watch" a C++ dynamic array using gdb?
Consider the following example:
int size开发者_C百科 = 10, *kk = new int[size];
for (int i = 0; i < size; i++) {
kk[i] = i;
}
delete [] kk;
How can I add a watch for the whole array? I can add a watch one by one (kk[0],kk[1]...), but since I know the array's length is there a way to do it automatically? I mean something like kk[0..size-1] or so.
I'm using NetBeans IDE together with cygwin g++ and gdb.
Try display *kk@<size>
From the doc for the print command:
@ is a binary operator for treating consecutive data objects anywhere in memory as an array. FOO@NUM gives an array whose first element is FOO, whose second element is stored in the space following where FOO is stored, etc. FOO must be an expression whose value resides in memory.
精彩评论