c和c++基本数据类型

必备知识

常量

在程序中不可以更改的量.一般以值的形式存在
例子 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位下

类型 字节数 表示范围
short 2 -32768 ~ 32767
unsigned short 2 0 ~ 65535
int 4 -2147483648~2147483647
unsigned int 4 0~4294967295
long 4 -2147483648~2147483647
unsigned long 4 0~4294967295
long long 8 -9223372036854775808~9223372036854775807
unsigned long long 8 0~18446744073709551615

范围在计算说明原因

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

字符型

类型 字节数 范围
char     1 -128 ~ +127
unsigned char 1 0 ~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.有无符号

 

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

 

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

posted @ 2022-09-03 21:29  逆·惜  阅读(154)  评论(0)    收藏  举报