我如何将链表传递给另一个功能
void CreateList()
{
Node * head = NULL;
Node * connect = NULL;
int num,size;
cin>>尺寸;
for(int x = 0; x< size; x ++)
{
cin>> NUM;
if(head == NULL)
{
Node * newnode = new Node;
newnode-> data = num;
newnode-> next = NULL;
head = newnode;
connect = head;
}
else
{
Node * newnode = new Node;
newnode-> data = num;
newnode-> next = NULL;
connect-> next = newnode;
connect = newnode;
}
}
}
void Add()
{
?? ???????????
}
int main()
{
CreateList();
system("暂停");
}
void CreateList() { Node *head = NULL; Node *connect = NULL; int num,size; cin>>size; for (int x = 0; x<size; x++) { cin >> num; if (head == NULL) { Node *newnode = new Node; newnode->data = num; newnode->next = NULL; head = newnode; connect = head; } else { Node *newnode = new Node; newnode->data = num; newnode->next = NULL; connect->next = newnode; connect = newnode; } } } void Add() { ????????????? } int main() { CreateList(); system("pause"); }
我想创建一个具有特定大小的链表。然后在不同的函数中执行其他任务,如Add(),print(),reverse()等。
I want to create a linked list with a specific size. then perform other tasks in different functions such as Add(), print(), reverse(), etc.
我知道如何创建列表,但我不知道如何传递它到其他功能。有人可以帮帮我吗?
I know how to create the list, but i dont know how to pass it to the other functions. Can someone help me?
感谢您在此处发帖。
>>我知道如何创建列表,但我不知道如何将其传递给其他功能。有人可以帮助我吗?
在我看来,这取决于你在哪里称之为"其他"的函数。
In my opinion, it depends on where do you call the "other" functions.
1。如果其他函数与CreateList在同一个cpp文件中,那么您可以将链接列表定义为全局变量,并将其作为引用或指针传递给其他函数。例如:
1. If the other functions are in the same cpp file with CreateList, then you could define your linked list as a global variable and pass it as a reference or pointer into other functions. For example:
Node *newnode = new Node;
void CreateList(Node *newnode )
{
...
}
void Add(Node *newnode )
{
...
}
2。您可以将CreateList的返回值定义为Node类型。然后你可以用它来传递到其他功能。例如:
2. You could define your CreateList's return value as a Node type. Then you could use it to pass into other functions. For example:
Node CreateList()
{
Node *newnode = new Node;
return *newnode;
}
void Add(Node *newnode)
{
}
int main()
{
Node *nodetest = NULL;
*nodetest = CreateList();
Add(nodetest);
system("pause");
}
希望这可以帮到你。
最好的问候,
Sera Yu