“hashLink”之前的预期表达式

时间:2013-08-26 00:14:29

标签: c struct

我收到一个我无法弄清楚的错误。我正在尝试定义一个struct的实例。我在代码中多次这样做,每次都会得到同样的错误。我不确定我做错了什么。

结构定义:

 struct hashLink {
      KeyType key; /*the key is what you use to look up a hashLink*/
      ValueType value; /*the value stored with the hashLink, a pointer to int in the case of concordance*/
      struct hashLink * next; /*notice how these are like linked list nodes*/
};
typedef struct hashLink hashLink;

调用代码(一个例子):

hashLink *temp = malloc(sizeof hashLink);
hashLink *temp2 = malloc(sizeof hashLink);

我得到的确切错误是:

 C:\Users\Marshall\C\CS261\hashMap.c||In function '_freeMap':|
 C:\Users\Marshall\C\CS261\hashMap.c|73|error: expected expression before 'hashLink'|
 C:\Users\Marshall\C\CS261\hashMap.c|74|error: expected expression before 'hashLink'|

1 个答案:

答案 0 :(得分:3)

sizeof hashLink ---> sizeof(hashLink)

与类型一起使用时,运算符sizeof需要括号。