gpt4 book ai didi

c - C 结构中的初始化和声明数组但给出错误

转载 作者:行者123 更新时间:2023-11-30 20:43:31 24 4
gpt4 key购买 nike

为什么会报错?

#include<stdio.h>
#include<stdlib.h>
typedef struct bST
{
int ID;
char name[30];
char surname[30];
int friendsID[30];
struct BST *left;
struct BST *right;
}BST;
int main ()
{


}
BST *newNode(int ID, char name[], char surname[], int friendsID[])
{
BST *newNodeTemp=(BST*)malloc(sizeof(BST));

if(newNodeTemp==NULL)
{
printf("Not Allowed!!\n");
exit(0);
}

newNodeTemp->ID=ID;
newNodeTemp->name=name; //error here
newNodeTemp->surname=surname; // error here
newNodeTemp->friendsID=friendsID; //error here
}

数组类型错误初始化姓名好友数组。

最佳答案

newNodeTemp->name=name; //error here
newNodeTemp->surname=surname; // error here
newNodeTemp->friendsID=friendsID; //error here

这些会产生错误,因为您试图分配给数组,即使用数组作为左值。

对于char数组,如果它们以nul结尾,则使用strcpy(如果不是,则使用memcpy),对于int您可以使用 memcpy 数组将内容从一个复制到另一个。

关于c - C 结构中的初始化和声明数组但给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43006334/

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