C++primeplus 第四章 2

C++primerPLus 第四章 string继续

1.获取一个string对象的长度
string str = "nihao";
str.size(); // 获取长度
2.C++的结构
struct person
{
	char name[20];
	int age;
};
struct {
	//,......
};这样子的结构无法声明对象,因为没有名字
struct {//......} st1;//在声明的时候同时定义了一个对象
struct person p1; // 在C++ 中允许省略struct, 即person p1;
struct person p2 = {"Jack", 21}; //结构的初始化方法,可以省略等号
struct person p3 = {}; //将会进行零初始化

tips :结构可以用同样的结构去进行赋值,即使成员里面包含数组。结构可以做普通变量做的任何事情

3.结构中的位字段

1.为什么要位字段:C++允许指定占用特定位数的结构成员,使得创建与某个硬件设备上寄存器对应的数据结构很方便。
2.字段的类型应该为整型或者枚举型。可以使用没有名称的字段来进行间距调整。每个成员都被成为位字段。
3.

struct person
{
	unsigned int SN : 4; // 4bits for sn value
	unsigned int :4 ; //4 bits unused
	bool goodIn : 1 ;//valid input (1 bit)
	bool goodTorgle: 1;  //successful torgling
};
//初始化方式
person p = {14, true, false};
//位字段通常用在低级编程中,一般来说,可以使用按位运算符来代替方法。
4.Union共用体

1.共用体的长度为其最大成员的长度
2.共用体多用在小型的硬件设备上,用来节省内存
3.匿名共用体在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值