数据类型和变量

目录

1.数据类型说明:

字符型:

整型:

浮点型:

布尔类型:

signed和unsigned:

取值范围及单位:

变量:

变量类型:

变量存储:

算术操作符:

+ -:

*:

/

%

赋值操作符:=和复合赋值

允许连续赋值

复合赋值

单目操作符:

++、--

前置++

后置++

前置--

后置--

+、-

强制转换类型


1.数据类型说明:

是告诉编译器数据的类型,从而让编译器操纵数据

字符型:

char:字符类型

【signed】 char :有符号的char

【unsigned】 char :无符号的char

整型:

短整型:short 【int】  、【signed】 short 【int】、【unsigned】short【int】

整型:int、【signed】int、unsigned 【int】

长整型:long【int】、【signed】long【int】、unsigned long【int】

更长整型(c99引入):long long【int】、【signed】long long 【int】、unsigned long long 【int】

浮点型:

float:单精度浮点型

double:双精度浮点型

long double :更长的双精度浮点型

布尔类型:

_bool:c语言原先是0表示假,非零表示真,后面c99引入了布尔类型,专门表示假。使用时需先调用头文件<stdbool.h>。取值是true或false

signed和unsigned:

用于修饰字符和整型。

Singed:表示一个类型带有正负号,有负值

unsigned:没有正负号,只能表示零和正整数

int类型默认是singed即带有正负号的。

unsigned默认修饰int,所以int可以省略。

char默认看系统。

取值范围及单位:

无符号16位整型:-32768~32767

有符号16位整型:0~65535

有符号整型:(-2147483647-1)~2147483647

limit.h文件中说明了整数类型的取值范围

float.h说明浮点类型取值范围

sizeof用来计算变量和类型所占大小,如:sizeof(char);sizeof(123)。单位:字节

比特位(位):bit(b)

字节:byte(B)

1 byte=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB,1TB=1024GB,1PB=1024TB

size_t是为了sizeof而出现的类型,本质是unsigned int

size_t的占位符是%zd

char:1字节;short:2字节;Int:4字节;long:4字节;long long:8字节;

变量:

创建变量格式:data_type name;即数据类型 变量名;例子:int age;

变量在创建时若写成int age=1;则是给变量一个初始值,叫初始化

变量类型:

全局变量:在大括号外定义变量,可以在整个项目工程使用

局部变量:大括号内部定义,只能在该文件内使用

局部变量优先级高于全局变量,例如名字相同时,优先使用局部变量

变量存储:

内存分3个区:栈区、堆区、静态区即其他区域

局部放栈区、全局放静态区(静态/全局变量)、堆土用来动态内存管理

算术操作符:

+  - * / %即双目操作符,3(操作数)+(操作符)+5(操作数):

+ -:
int a=5+7
int b=5-1
*:
int a=5*7
/

除号两端如果是整数,执行整数除法,得到的也是整数

就算是浮点类型,得到的也是整数如1.0000

如果希望得到小数,则需要两个操作数至少有一个数是浮点数,即小数

%

取模计算,返回两个整数相除的余数。用于整数,不能用于浮点数,结果正负号由第一个运算符的正负号决定

赋值操作符:=和复合赋值
int a=100;//初始化
a=200;//赋值操作
允许连续赋值
a=b=5;
复合赋值
int a=10;
a=a-1;
a=a+1;

可以简化

int a=10;
a+=3
a-=2

+=   -=     *=   /=     %=       >>=    <<=     &=    |=       ^=

单目操作符:

++、--、(正)+、-(负)

++、--

分为前后置,即++a、a++、--a、a--

前置++
int a=10;
int b=++a;

相当于

int a=10;
int b;
a=a+1;
b=a

先加1,后使用

后置++

先使用,后加1

int a=10;
int b=a++;

相当于

int a=10;
int b=a;
a=a+1;
前置--

与前置++同理,只是变成-1

后置--

与后置--同理,只是变成-1

+、-

都是单目操作符,正号可以不写,不影响结构,负号会影响。

int a=10;
int b=-a;//这里b就是-10了
int c=-10;
int d=-c;//这里d就是10了
强制转换类型
int a=3.14;//3.14是double类型,编译器会报错,可以用强制转换符
int a=(int)3.14;//若拿来计算,结果只会是整数部分,即3

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值