1

我有指向结构的指针的动态数组。

struct item {
    unsigned long code;     //1 - 2^32
    unsigned short date;    //0 - (13*365+4-31)+1
    unsigned char place;    //1 - 200
    unsigned short amount;  //0 - 10000
    unsigned short price;   //0 - 50000
};

count = getSizeFromSomewhere();

item ** x=new item * [count]; //real used array
item * y[10];  //just for example

当我在 Xcode 中调试这段代码时,我能够观察到y数组的每个元素以及项目结构的相应值。但是在x数组中我什么都看不到,除了第一个元素(和相应的项目结构)。

有没有办法将 x 视为指针数组(就像我对y所做的那样)。

4

1 回答 1

2

由于“x”的内存是在编译时动态分配的,编译器不知道数组的大小。但是 'y' 是在堆栈上分配的,它可以很容易地计算出它的大小。因此,您将无法看到“x”,因为您可以看到“y”。观察“x”的最简单方法是为 x[i] 添加一个观察,其中 i = 0..count-1

于 2008-12-07T13:12:55.673 回答