C语言怎么给结构体里的结构体赋值?

发布网友 发布时间:2022-04-23 12:51

我来回答

5个回答

热心网友 时间:2023-10-14 05:39

c里面是不能这样赋值的, 这种方式只有在定义的时候初始化才可以
如果 int a[][2] = { 2,2}这是正确的,但是定义数组之后再 a = { 2,2}是不正确的, 你还是一个一个赋值吧. 另外说明一下吧, 定义的时候是给变量申请内存, 编译器会把你初始话的值赋值到内存, 但是如果 以后在赋值的时候, 就成了指针了, 语法就不正确了
m1->edges=
{
{0,1,0,0},
{1,0,1,0},
{0,1,0,1},
{0,0,1,0}
};

------
你可以把你要初始话的这个数组定义个const数组, 后面再用for来赋值吧, 没有其他办法
{
{0,1,0,0},
{1,0,1,0},
{0,1,0,1},
{0,0,1,0}
};

热心网友 时间:2023-10-14 05:39

用成员符号.阿
比如
struct date
{
int month;
int day;
int year;
};
struct student
{
char name[20];
struct date birthday;
}student1;
那么你想给student1的生日里的year赋值的话
student1.birthday.year=1987;

热心网友 时间:2023-10-14 05:40

typedef struct _BOOK_INFO
{
int nType;
}BookInfo;

赋值如下:

BookInfo bookinfo;
bookinfo.nType = 1;

如果满意的话,请给点分吧, 我严重缺分啊。 呵呵

热心网友 时间:2023-10-14 05:40

结构体赋值应该不结构体中的所有项都赋过去例如:
struct Node
{
int data;
struct Node *next;
}
Node s1,s2;
如果将s2的值付给s1则:
s1->data=s2->data;
s1->next=s2->next;
这样才叫结构体的赋值。
每一部分都要赋值

热心网友 时间:2023-10-14 05:41

如果弄的是结构数组,那就给学好设置为负数表示无效记录就可以了啊,循环的时候加上一个判断,如果是链表或者树,可以直接删除的,
呵呵,不知道问的是不是这个意思

array[ i ].data = xxx;这样可以吗?

array[ i ]需要改变的结构
array[ i ].data 该结构的元素
xxx新的值
不知道是不是这个意思,呵呵,如果用vc就应该没问题啊

热心网友 时间:2023-10-14 05:39

c里面是不能这样赋值的, 这种方式只有在定义的时候初始化才可以
如果 int a[][2] = { 2,2}这是正确的,但是定义数组之后再 a = { 2,2}是不正确的, 你还是一个一个赋值吧. 另外说明一下吧, 定义的时候是给变量申请内存, 编译器会把你初始话的值赋值到内存, 但是如果 以后在赋值的时候, 就成了指针了, 语法就不正确了
m1->edges=
{
{0,1,0,0},
{1,0,1,0},
{0,1,0,1},
{0,0,1,0}
};

------
你可以把你要初始话的这个数组定义个const数组, 后面再用for来赋值吧, 没有其他办法
{
{0,1,0,0},
{1,0,1,0},
{0,1,0,1},
{0,0,1,0}
};

热心网友 时间:2023-10-14 05:39

用成员符号.阿
比如
struct date
{
int month;
int day;
int year;
};
struct student
{
char name[20];
struct date birthday;
}student1;
那么你想给student1的生日里的year赋值的话
student1.birthday.year=1987;

热心网友 时间:2023-10-14 05:40

typedef struct _BOOK_INFO
{
int nType;
}BookInfo;

赋值如下:

BookInfo bookinfo;
bookinfo.nType = 1;

如果满意的话,请给点分吧, 我严重缺分啊。 呵呵

热心网友 时间:2023-10-14 05:40

结构体赋值应该不结构体中的所有项都赋过去例如:
struct Node
{
int data;
struct Node *next;
}
Node s1,s2;
如果将s2的值付给s1则:
s1->data=s2->data;
s1->next=s2->next;
这样才叫结构体的赋值。
每一部分都要赋值

热心网友 时间:2023-10-14 05:41

如果弄的是结构数组,那就给学好设置为负数表示无效记录就可以了啊,循环的时候加上一个判断,如果是链表或者树,可以直接删除的,
呵呵,不知道问的是不是这个意思

array[ i ].data = xxx;这样可以吗?

array[ i ]需要改变的结构
array[ i ].data 该结构的元素
xxx新的值
不知道是不是这个意思,呵呵,如果用vc就应该没问题啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com