2013-02-22 175 views
3

我試圖在指針參數中玩弄我的新課程,並且我想讓函數高級和everyoneElse採取指針x,但是當我嘗試調用該函數指針pAge,它表示錯誤:類型名稱是不允許的。怎麼了?C++錯誤:類型名稱不允許

#include <iostream> 


int senior(int* x); 
int everyoneElse(int* x); 

using namespace std; 

int main() 
{ 
    int age(0); 
    int* pAge(&age); 
    cout<<"How old are you?"<<endl; 
    cin>>age; 
    if(age>59) 
     senior(int* pAge); 
    else 
     everyoneElse(int* pAge); 
    return 0; 
} 

int senior(int* x) 
{ 

return *x; 
} 

int everyoneElse(int* x) 
{ 

return *x; 
} 
+0

這與調用任何其他函數相同。您不包含類型。 – chris 2013-02-22 04:24:00

回答

2
senior(int* pAge); 
else 
    everyoneElse(int* pAge); 

更換

senior(pAge); 
else 
    everyoneElse(pAge); 
+0

你很快:-) – 2013-02-22 04:24:49

+0

呵呵,和你一樣:) – 2013-02-22 04:28:07

5
if(age>59) 
    senior(int* pAge); 
else 
    everyoneElse(int* pAge); 

調用函數時,您可以不包括類型名。更改爲:

if(age>59) 
    senior(pAge); 
else 
    everyoneElse(pAge); 
1

當你調用功能,你不必指定parametr的類型,你傳遞給函數:

if(age>59) 
    senior(pAge); 
else 
    everyoneElse(pAge); 

Parametrs應按類型只在函數原型和身體功能(水木清華這樣的:)

int senior(int* x) 
{ 

return *x; 
} 
指定
相關問題