c++学习(1)数据类型

必备知识

常量

在程序中不可以更改的量.一般以值的形式存在
例子 3 3.5 ’a‘

变量

在程序中可以改变的量
注意必须先定义,才能使用

定义变量:类型 变量名
例子int a; char b; short c;

变量名

变量名必须是合法标识符
1.字母,数字,下划线()组成
2.开头只能字母或者下划线(
)
3.不能是关键字

命名规范
1.区别大小写
2.名字不宜过长
3.顾名思义

命名法则:
正式命名法(每一个英文单词首字母大写)
驼峰命名法
匈牙利命名法:变量名=属性+类型+对象描述

一般
b表示布尔值

p表示指针

c表示单个字符

为什么开头不能是数字

可以提高编译的效率,省去了遍历一遍名字的时间
比如
int 1234abc;
编译器要去判断变量名是数字还是一个合法的变量名,就要去遍历一遍遇到字符或者下划线才知道这不是数字

基本数据类型

基本数据类型:整形,字符型,布尔型,浮点型

类型修饰符

signed有符号
unsigned无符号

不加默认为signed有符号
例子
int a; char c; short b;

在类型前面加unsigned表示无符号
unsigned int a;

注意
浮点型只有有符号类型,没有无符号类型
signed 和 unsigned都不能修饰float 和 double 浮点型

整形

默认32位下

类型字节数范围
short2-32768 ~ 32767
unsigned short20 ~ 65535
int4-2147483648~2147483647
unsigned int40~4294967295
long4-2147483648~2147483647
unsigned long40~4294967295
long long8-9223372036854775808~9223372036854775807
unsigned long long80~18446744073709551615

范围在计算说明原因

注意不同环境下long和long long的字节数不一样

字符型
类型字节数范围
char1-128 ~ +127
unsigned char10 ~265

字符型既可以表示字符(字符常量:‘a’,‘0’,‘’)

转义字符

‘\n’一个字符.’\12’(表示8进制的数,最多三位),‘\x0a’(表示16进制,最多2位)

ASCII码值

每一个字符都对应一个整数,该整数称为字符的ASCII

字符串常量

"duwufce"双引号,可以包含多个字符,系统默认\0例如"abcd"有5个字节a,b,c,d,\0

布尔型

布尔型常数 true(1)false(0)
一切非0的数都为真

浮点型常量

float:
1bit(符号位) 8bits(指数位) 23bits(尾数位)
double:
1bit(符号位) 11bits(指数位) 52bits(尾数位)
小数形式;3.14
指数形式:3.2e-2

浮点型的精度

float和double的精度是由尾数的位数来决定的
float:2^23 = 8388608,
一共七位,在这7位中不能完全保证7位都对,但绝对能保证6位都对,float的精度为6~7位有效数字;
double:2^52 = 4503599627370496,
一共16位,在这16位中不能完全保证7位都对,但绝对能保证15位都对,double的精度为15~16位。

超过了表示范围会怎么样

数据溢出:当变量的值超出了数据类型的表示范围
计算机自动调整到数据类型的表示范围:

最大值:-该数据表示类型表示范围的总数量:2的(字节数8)次方
<最小值:+该数据表示类型表示范围的总数量:2的(字节数
8)次方

如何选择整形

1.节约内存
2.避免数据溢出
3.有无符号

有错误欢迎大佬来指正
希望对你有帮助,谢谢观看

慢慢的,你总会发现,你的努力没有白费。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值