2014-12-06 155 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