C++从零开始 二(C++ Primer Plus 第六版)

第三章 处理数据

 

一、整型(11种)

1、数字整型(内存和宽度从小到大):

(黑为有符号类型,红为无符号类型)

  • short(>=16位):
  • unsigned short
  • int(宽度至少与short一样)
  • unsigned int (缩写:unsigned)
  • long(>=32位,宽度至少与int一样长)
  • unsigned long
  • long long(>=64位,宽度至少与long一样长)
  • unsigned long long

(1)有符号与无符号超出整型的限制(宽度)的情况:

以short与unsigned short为例:
 

 

(2)进制:

  • 八进制:第一位为0,第二位为1~7
  • 十六进制:前两位为0x或0X

 例一(八进制与十六进制的输出):

例二(hex与oct的作用):

 

 (3)确定常量的类型的方式:

  • short(>=16位):无
  • unsigned short:无
  • int(宽度至少与short一样):无
  • unsigned int (缩写:unsigned):u或U(2022u)
  • long(>=32位,宽度至少与int一样长):L (2022L)
  • unsigned long :ul(可以采用任何一种顺序,大小写均可,2022UL)
  • long long(>=64位,宽度至少与long一样长):ll或LL(2022LL)
  • unsigned long long : ull、Ull、uLL和ULL (2022ULL)

2、char类型:字符和小整数

(1)书写格式:

  • 正确格式:

        char ch = 'M'; 

  • 错误格式:

        char ch = ”M“;

  • 奇葩写法(写ASCII码)

        char ch = 109;

        输出为:m(109为m的ASCII码)

  • 注意方式:

        char ch = '1';(只有个位,意思是1的字符,其ASCII码等于49)

        输出为: 1 

(2)有无符号的char:

  • signed char (特定有符号:-128~127)
  • unsigned char(特定无符号:0~255)

(3)wcha_t(可短可长):

书写格式:

(4) char16_t 与 char32_t:

书写格式:

  

3、bool类型:
布尔值:true(真)与false(假)

二、const限定符:

作用:编译器将不允许修改该加入了限定符的常量的值。


书写格式:

三、浮点数:


1、E/e表示法:

d.dddE+n(d.dddE)指的是将小数点向右移n位;d.dddE-n指的是将小数点向左移n位。

2、浮点类型:

  • float:至少32位(通常32位)
  • double:至少48位,不少于float(通常64位)
  • long double:至少和double一样多(通常80、96或128位)

3、setf():

  • 定义(作用):这种调用迫使输出使用定点表示法,以便更好地了解精度(提升精度),它防止程序把较大的值切换为 E 表示法,并使程序显示到小数点后6位。
  • 使用方式:(在输出前)

  •  例子:

        有setf():

        输出结果:

        

        无setf(): 

 

        输出结果:

 

 4、浮点常量:

  • float:f或F作为后缀(1,234f)
  • double:无
  • long double:l或L作为后缀,一般用L(1.22L)

5、优缺点(相对于整型):

        优:

  • 可以表示整数之间的值;
  • 表示的范围大得多;(有缩放因子)

        缺:

  • 运算慢;
  • 精度降低;

四、算数运算符:

1、类型转换:

float到int:1.62 → 1;

2、以{}方式初始化时进行的转换:

  • 大括号的初始化称为列表初始化;会保证数值的精度,不允许缩窄,例如float转int是禁止的,只能int转float。 

  • 使用方式:

3、强制类型转换:

  • 方法一:

  • 方法二(static_cast<>):

  •  例题:

 

五、auto

定义:在初始化声明中,如果使用关键字auto,而不指定变量的类型,编译器将把变量的类型设置成与初始值相同。

书写格式:

 

扩展:

1、运算符 sizeof:内存

2、climits文件(头文件:#include <climits>):宽度

例子(1,2):

 

 

 

3、#define(在这里和#include是一样的,都是预处理器):


作用:#define INT_MAX 32767

在程序中查找INT_MAX,并将所有的INT_MAX都替换为 32767;

4、cout.put():

现版本:cout.put(***)与cout<<*** 作用一样
 

5、转义序列:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值