gpt4 book ai didi

c++ - 如何通过引用传递结构?

转载 作者:太空宇宙 更新时间:2023-11-03 10:32:16 25 4
gpt4 key购买 nike

我想不通,这就是我目前所拥有的。

但是 Enqueue() 函数并没有改变 main 方法中的 HeadTail 对象。

我该怎么做?

#include <stdio.h>

typedef struct queuenode{
int data;
struct queuenode *next;
} Queue_type;

void Enqueue( Queue_type *head, Queue_type *tail , int item)
{
Queue_type *temp;
temp->data = item;
temp->next = NULL;
if (tail == NULL){//if first node
head=temp;
tail=temp;
}
else{
tail->next = temp;
tail = temp;
}
}

void main(void)
{
Queue_type *Head;
Queue_type *Tail;

Head = NULL;
Tail = NULL;

printf("\n[*]Enter Number to Enqueue : ");
scanf("%d", &item);
Enqueue(Head, Tail, item);

}

最佳答案

如何通过引用传递指针?通过引用传递它:

void Enqueue( Queue_type *&head, Queue_type *&tail , int item)

其他问题:

Queue_type *temp;
temp->data = item;

是未定义的行为。

Mandatory link.您正在 C++ 环境中编写 C 代码。只是不要。

关于c++ - 如何通过引用传递结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13479172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com