关于该代码:C语言:为什么我得到NULL?
tp是指向包含表的某个结构的指针。
该表是一个指向不同结构的指针,用作数组。
大小只是表的大小。
即时通讯以初始化所有单元
阵列为NULL发送这些veriables到一个函数。
这一行:使用Eclipse调试器我可以看到,该数组中的对象是INFACT
被初始化为NULL
void initArr(ObjectP* array,int size)
{
int i;
for (i = 0; i < size; ++i)
{
array[i]=NULL;
}
}
:
initArr(tp->table,tp->size);
它们发送到该功能,但是当方法结束时,
tp-> table为NULL。
指针狂野?
请帮忙。
的结构:
表:
typedef struct Table
{
size_t size;
hashFcn hash;
printFcn print;
comparisonFcn comp;
ObjectP* table;
int duplicated;
}Table;
对象:
typedef struct Object
{
void *key;
ObjectP pointsTo;
}Object;
这是哪一个? C还是C++?我给你的建议将会*非常*不同,取决于它是哪一个。 – Flexo
请发布'struct'。 – 2011-08-24 15:34:26
为什么你在返回'void'的函数中返回一些东西? – Constantinius