0

我创建了一个结构:

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

    time* next;
    time* back;
};

我创建了 2 个指向结构的指针:

time* traverse, head;

我想将 head 的位置指向与 head 相同的位置:

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

为什么我在作业中遇到错误?

4

3 回答 3

6

写的时候

time* traverse, head;

星号只影响第一个变量。将您的声明更改为

time *traverse, *head;

并且错误应该消失了。

于 2012-12-06T19:46:10.477 回答
3

指针声明错误

time* traverse, head;

它只是声明一个指针和一个对象

您应该将其声明为:

time* traverse;
time* head;
于 2012-12-06T19:45:11.023 回答
2

因为您没有声明head为指针:

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

不一样

time* traverse, head;    //one is a pointer, one is an object
于 2012-12-06T19:45:03.987 回答