2012-12-06 125 views
0

我創建了一個結構:指針變量賦值

struct time 
{ 
    int hours; 
    int minutes; 
    int seconds; 
    double total_time; 
    double price; 

    time* next; 
    time* back; 
}; 

我已經創建了兩個指針的結構:

time* traverse, head; 

我想頭的位置點爲頭相同的位置:

traverse = new time; 
    head = traverse; // Error here 

爲什麼我在作業中遇到錯誤?

回答

6

當寫

time* traverse, head; 

明星隻影響第一個變量。將您的聲明更改爲

time *traverse, *head; 

並且錯誤應該消失。

2

因爲你沒有申報head爲指針:

time* traverse, *head; //both are pointers 

是不一樣的

time* traverse, head; //one is a pointer, one is an object 
3

指針的聲明是錯誤的

time* traverse, head; 

它只是聲明一個指針和一個對象

你應該把它聲明爲:

time* traverse; 
time* head;