慕斯卡006383
2021-03-17
结构体 数组 指针运用
0赞 · 0采集
慕斯卡006383
2021-03-17
(* w). 指针变量引用成员,可用 -> 代替
0赞 · 0采集
Ocelot
2020-01-27
结构体指针:
指向结构体变量的指针:
eg.
struct weapon * w;
w = &weapon;
printf("name=%s\n",(*w).name)//或w->name
0赞 · 0采集
慕用4518114
2019-09-10
3种调用成员变量的方法:结构体变量名称.成员变量名
(*p).成员变量名
p->成员变量名
指针p=weapons;
struct weapon weapons[2]={{"name1",100,200},{"name2",100,200}};
printf("%s\n",p->name);//此时输出为weapons[0].name,即name1
p++;//指向了weapons[1]
1赞 · 1采集
qq_慕勒0516037
2019-05-27
结构体指针
struct weapon *w;
w=&weapon_1;
(*w).name表示指向结构体中的成员()不能省略,.的优先级大于*的优先级,w->name
*w表示指向结构体变量
结构体数组指针
struct weapon *p;
p=weapon_2;
p->name既是weapon_2[0].name
p++既是weapon_2+1,指向了weapon_2[1]
0赞 · 0采集
尘中尘27
2019-03-05
struct weapon weapon_2[2] = {{},{}};
// weapon_2 为 weapon 数组第一个元素的地址,故
struct weapon * p;
p = weapon_2;
p->name // 相当于weapon_2[0].name
p++; // 则相当于 weapon_2[1].name
0赞 · 0采集
慕神2511819
2019-01-02
若要指向结构体中的任意一个变量,有如下四种方法:
e.g struct weapon weapon_1{"weapon name"}weapon_1.name
struct weapon (*w); w =&weapon name; (*w).name;
struct weapon (*w); w =&weapon name; w->name;
struct weapon *p;p=weapon_2;(指针访问该数组第一个数据的位置)
0赞 · 0采集
13sai
2018-12-31
因为结构体数组名本身就是指针地址 所以赋值给指针时 前面不用加&
截图
0赞 · 0采集
慕神2511819
2018-12-26
结构体指针
指向结构体的指针e.g struct weapon *w;
w=&weapon_1;
printf("name=%s\n",(*w).name/w->name/weapon_1.name);
weapon_2既为一维数组(其中包含两个结构体各为两个数组中的元素),又为指向该数组中第一个元素的指针。
0赞 · 0采集
肖福华
2018-10-21
struct weapon * w;//声明一个指向struct weapon类型的指针变量
w=&weapon_1; //让w指向weapon_1
*w表示w指向的变量weapon_1;
(*w).name即是weapon_1.name,也可以w->name
struct weapon *p; //声明一个指向struct weapon变量的指针
p=weapon_2; //weapon_2是数组weapon_2[2];此处指向该数组的第一个也即weapon_2[0];
同样,也可以p->name或weapon_2[0].name;
若要指向第二个,p++;
0赞 · 2采集
lsgwr
2018-05-07
访问结构体成员,用(*w).name还是w->name还是w.name都是可以地,C语言底层进行了屏蔽
截图
0赞 · 0采集
慕娘4466587
2018-05-05
初始化结构体成员:struct 名称 变量名 = {"字符数据",数据,数据....};
访问结构体成员:变量名.结构体成员
结构体数组,每个元素都是一个结构体类型的数据,每个结构体成员类型数量相同。
0赞 · 0采集
无所谓罗罗
2018-04-08
w->name 可以替代(*w).name
0赞 · 0采集
慕粉1441471043
2018-03-26
结构体指针
截图
0赞 · 0采集
陈以一_
2018-03-09
三种访问结构体成员的方法;
结构体指针, 结构域体数组指针
截图
0赞 · 0采集
VanCool无邪
2018-02-27
指针->成员,调用
截图
0赞 · 0采集
qq_梁梁_0
2018-02-24
w->name
截图
0赞 · 0采集
qq_梁梁_0
2018-02-24
(*w).name
截图
0赞 · 0采集
慕斯卡447355
2018-01-05
struct weapon *w;
printf(“name=%s\n”, (*w).name);
结构体指针的使用。
截图
0赞 · 1采集
HE_void_0
2017-12-19
结构体
struct {
char prict(rpk);
int atk;
}
0赞 · 0采集
white_3_week
2017-11-30
指向结构体数组的指针
截图
0赞 · 0采集
white_3_week
2017-11-30
结构体指针
截图
0赞 · 0采集
AugusYang
2017-11-08
赋值结构体数组时没有&符号,默认指向[0]
0赞 · 0采集
jresm骏
2017-09-17
结构体指针
截图
0赞 · 0采集
qq__262
2017-09-01
结构体指针对,结构体数组的运用
截图
0赞 · 0采集
qq__262
2017-09-01
指针运用的结果
截图
0赞 · 0采集
qq__262
2017-09-01
结构体指针,->指向运算符
截图
0赞 · 0采集
矢乐志
2017-08-06
struct stu{char name;}stu_1;
struct stu* w=&stu_1;
(*w).name;
w->name;
stu_1.name;
截图
0赞 · 0采集
慕后端2383128
2017-08-02
struct 结构体名 xx{
char name[20];//在定义数组时name[20]表示长度20,而数组中的元素下标是从namep[0]开始。
}
struct 结构体名 xx;
xx={"zeng"};//其中只有一组元素时
struct 结构体名 *p;//指针调用
p=&xx;//&不能省略。
printf("%s",(*p).name);等价于printf("%s",p->name);等价于(%s",xx.name);
xx[2]={{"zeng"},{shuai}};//xx中有多组元素
struct 结构体名 *p;//指针调用
p=xx;//这里&省略,p指向的是xx[0]即第一组元素。
printf("%s",p->name);//p->name即为xx[0].name
p++;//表示xx +1 即输出xx[1];
printf("%s",p->name);//即xx[1].name
0赞 · 0采集
至繁归于至简_
2017-08-01
p=weapon_2而不是p=&weapon_2这部分是有难点的,数组的名字代表了这个数组的内存首地址,数组括号内的长度代表了数组的单元数,数据类型是int的话就按照int类型(32位系统上是4个字节)乘以单元数的长度,如果数据类型是结构体的话就按照结构体的长度乘以单元的长度。
总之数组名字代表了这个数组的内存首地址
p++,不是内存位置右移了一个字节,而是右移了一个单元长度的结构体weapon的内存长度。所以就不难理解为什么右移到了第二个结构体实例的首地址上了
2赞 · 1采集