将全局指针传递给函数

时间:2014-12-06 09:23:02

标签: c pointers types struct

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

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 个答案:

答案 0 :(得分:4)

遵循以下规则:

  • 必须在声明函数
  • 时指定变量类型
  • 您声明函数
  • 可能指定变量名称
  • 当您调用函数
  • 时,不得指定变量类型

在您的示例中,变量类型为Word*,变量名称为root

所以改变这个:

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

对此:

ordered(root); //call to my function