struct node ** hashTable和struct node * hashTable [MAXSIZE]之间有什么区别?

时间:2014-06-29 21:49:15

标签: c syntax

我在理解这两者之间的区别时遇到了一些麻烦..这些都指向指针?而且,哪些是适合使用它们的理想情况?

2 个答案:

答案 0 :(得分:1)

struct node *hash1[MAXSIZE];
struct node **hash2 = hash1;

第一个创建一个MAXSIZE元素数组,但每个元素都是指向struct node的指针。

第二个创建一个变量,一个指向指针的指针,该指针使用hash1中的第0个指针的地址进行初始化。

您可以在函数的参数列表中使用第二种表示法,或者在需要对整个哈希表的单个引用时使用。在布局内存时使用第一个,创建一个可以在以后修改的哈希表。

答案 1 :(得分:0)

第一个是指向struct node指针的指针,第二个指向MAXSIZE的{​​{1}}指针数组。

使用C运算符优先级规则来解开类型。

相关问题