Nó chỉ hiển thị các giá trị quan trọng đầu tiên, trong cửa sổ gỡ lỗi
Tôi đoán bạn đang đề cập đến các phím con trỏ, khai báo với int *keys;
Các debugger không biết rằng điều này là một mảng: tất cả những gì nó biết là đây là con trỏ đến một số int
. Vì vậy, nó không thể biết có bao nhiêu giá trị bạn muốn nó hiển thị.
Những gì tôi đã tìm thấy, bằng cách sử dụng Qt Creator 2.1.0 debugger trên Ubuntu, là đoạn mã sau cho phép tôi để xem tất cả 5 giá trị:
int array1[5];
array1[0] = 2;
array1[1] = 4;
array1[2] = 6;
array1[3] = 8;
array1[4] = 10;
Trong khi với mã này, trình gỡ lỗi chỉ hiển thị giá trị đầu tiên, chính xác như bạn mô tả.
int* array2 = new int[5];
array2[0] = 20;
array2[1] = 21;
array2[2] = 22;
array2[3] = 23;
array2[4] = 24;
Ngoài: tất nhiên, các mã trên sẽ được theo sau bởi điều này, để tránh bộ nhớ bị rò rỉ:
delete[] array2;
Sau: Qt Developer Network Forum Post này nói rằng bạn có thể nói với các debugger để hiển thị một con trỏ dưới dạng mảng:
Trong trình đơn người xem và trình đơn ngữ cảnh, chọn “Biểu thức xem”. Điều này tạo ra một biểu thức mới được xem bên dưới.
Ở đó, nhấp đúp vào mục nhập trong cột "Tên" và thêm "@ 10" để hiển thị 10 mục nhập.
Điều này nghe có vẻ như bạn sẽ bắt đầu.
Nguồn
2011-09-24 17:57:35