C语言 struct

如题所述

第1个回答  2019-05-06
定义
struct
Card
{
int
ID;
//卡号
char
name[20];
//姓名
double
value;
//金额
int
flag;
//挂失信息
};
//特别注意,这里的分号不可以少
以后,struct
Card就是和int,char一样是一种类型了
然后可以定义变量
struct
Card
card;
card.ID,card.flag等等就可以用了
如果是在C++中
struct
Card
card;和Card
card;效果一样
但是C中,定义变量的时候,struct不可以省略,如果要省略的话,在定义这个struct的时候用typedef定义一个别名
typedef
struct
Card
{
..
}Card;//Card变成struct
Card的别名
然后可以使用struct
Card
card;或者Card
card;来定义变量
struct
Card
{
int
ID;
//卡号
char
name[20];
//姓名
double
value;
//金额
int
flag;
//挂失信息
}card[1000];表示定义一个card数组,该包含了1000个Card变量
就变成了card[0].ID,card[1].name这样了
假如struct
Card
card;
struct
Card
*p=&card;
当变量是指针的时候,用p->ID,p->name
//指针的时候这种更常用
等价于(*p).ID,(*p).name;
相似回答