1.1 struct 结构体 基础

10 篇文章 0 订阅
10 篇文章 0 订阅
例: 
struct horse{
	int age;
	int height;
    }Slver;

horse 不是一个变量,通常称为 结构标记符,命名方式与变量名相同。
注: 结构标记符可以和变量使用相同的名称(但最好不要这么做)。


结构体大小
使用 sizeof() 运算符,
1:
struct person
{
    int age;
    int height;
    char name[20];
    char sex;		//
    char father[20];
    char mother[20];
}p1,p2;
sizeof(p1);   //=72    (4 + 4 + 20 + 4 + 20 + 20);
2:
struct person
{
    int age;
    int height;
    char name[20];	//
    char father[20];
    char mother[20];
}p1,p2;
sizeof(p1);   //=68    (4 + 4 + 20 + 20 + 20);
3:
struct person
{
    int age;
    int height;
    char name[18];	//
    char father[20];
    char mother[20];
}p1,p2;
sizeof(p1);   //=68    (4 + 4 + 20 + 20 + 20);
4:
struct person
{
    int age;
    int height;
    char name[16];	//
    char father[20];
    char mother[20];
}p1,p2;
sizeof(p1);   //=64    (4 + 4 + 16 + 20 + 20);
5:
struct person
{
    int age;
    int height;
    char name[18];
    char sex;		//
    char father[20];
    char mother[20];
}p1,p2;
sizeof(p1);   //=68    (4 + 4 + 20 + 20 + 20);
 说明:  

访问结构体成员
声明结构体变量: struct person pp;


注: 结构变量的名称不是一个指针。
使用点(.)引用结构成员。例: p1.age = 23;
称为: 成员选择运算符。


结构体指针
声明结构体指针: struct person *pt;

使用 -> 访问结构成员。例: pt->age; 或者 (*pt).age;
称为: 成员指针运算符


结构体数组
声明结构体数组: struct person arr[3];
arr[0].agr = 23;

结构体动态分配内存
struct person *persons[10];
声明了一个包含 五十个指向person结构的指针的数组。
使用 malloc() 函数分配内存空间
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值