2014-12-06 154 views
1

我声明了一个全局结构体Word * root = NULL;我通过使用一些pthread调用(创建一个BST)来填充,当我通过调用inorder(Word * root)打印出一个inorder遍历函数时,它给了我一个错误,指出“意外的类型名称'Word':期望的表达式” 。我不明白我做错了什么。将全局指针传递给函数

void ordered(Word *root); // declaring function 
//code// 
Word *root = NULL; // declare global pointer to root 

/*Main*/ 
//code that does some work and eventually creates a BST with root 

ordered(Word *root); //call to my function 
+1

不需要指定变量类型('词*'你的情况)调用函数时。只需调用'ordered(root);'。 – 2014-12-06 09:25:37

回答

4

遵循以下规则:

  • 必须在声明函数指定变量类型
  • 可以指定变量名,当你声明函数
  • 一定不能指定变量类型当您调用功能

在你的例子中,变量类型是Word*,变量名是root

所以更改此设置:

ordered(Word *root); //call to my function 

要这样:

ordered(root); //call to my function