C语言数据类型和变量

数据类型介绍

不同数据类型的长度不同

1.字符型

char是有符号无符号是不确定的,是取决于编译的实现。

大部分的编译器上char==signed char

2.整形

int==signed int

对于有符号的整数打印应该使用%d

对于无符号的整数打印应该使用%u

3.浮点型

4.布尔类型

表示真/假的变量--布尔值,即_Bool

布尔类型的使用需要包含头文件<stdbool.h>,布尔类型变量的取值是:true或者false。

早期C语言中的规定,0表示假,非0表示真。

布尔类型的长度为1.

sizeof操作符

sizeof专门用于计算其操作符数类型长度的,单位是字节。

其操作符的操作数可以是类型也可以是变量或者是表达式。

sizeof的操作数如果不是类型,是表达式的时候,可以省略掉后边的括号。

sizeof后边的表达式是不真实参与运算的,根据表达式的类型来得出大小。

sizeof的计算结果是size_t类型的,且此类型打印时需要用%zd进行打印,因为sizeof运算符的返回值在C语言中之规定无符号整数,并未规定具体的类型,所以现在提出了一个解决方法,那就是创造一个类型别名size_t,用来统一表达sizeof的返回值类型。

signed和unsigned

C语言使用signed和unsigned关键字修饰字符型和整数类型的。

signed关键字,表示一个类型带有正负号,包含负值。

unsigned关键字,表示该类型不带有正负号。只能表示零和正整数。

整数变量声明为unsigned的好处是,同样长度的内存能够表示的最大整数值,增大了一倍。如:16位的signed short int的取值范围是:-32768-32767,最大是32767.而unsigned short int的取值范围是:0-65535.

变量

变量的创建

使用类型用来创建变量,类型的语法形式是这样:

创建变量的同时给予一个值,叫做初始化。

已经创建好的变量,给予一个值,叫做赋值。

变量又分为两类:

1.全局变量

在大括号外部定义的变量就是全局变量

2.局部变量

局部变量的使用范围是比较局限,只能在自己所在的局部范围内使用。

局部变量和全局变量都可以使用的时候,局部变量优先使用。

局部变量是放在内存的栈区;全局变量是放在内存的静态区;堆区是用来动态内存管理的。

算数操作符(双目)

+、-、*、/、%,这些操作符都叫做双目操作符,且操作符也叫做运算符。

除号的两端如果是整数,执行的是整数除法,所得到的结果也是整数;如果想要得到浮点数的结果,两个运算符中必须至少有一个是浮点数,C语言才会进行浮点数除法运算。

%表示取余运算,即返回两个整数相除的余值,这个运算符只能用于整数,不能用于浮点数。

负数求模的规则:结果的正负号,取决于第一个操作数的正负号。

赋值操作符

赋值操作符也可以连续赋值,但是不建议,容易出错,建议把代码拆开写。

复合赋值符

单目操作符

++、--、+、-,这些操作符都是单目操作符

前置++,后置++

--同理。

+、-

运算符+对于正负值没有影响,是一个完全可以省略的运算符。

运算符-用来改变一个值的正负号,负数的前面加上-就会得到正数,正数的前面加上-就会得到负数。

强制类型转换

操作符不同时才考虑强制转换。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值