变量的类型

  变量的类型

对于之前所学习的知识进行相关的整理,进行梳理,以求在以后的日子得以复习和总结。今天进行C/C++的变量类型梳理,如下:

  1.整型

  整型一般由short,int,longlong。

 1.1整型int

  一个整数占用32bit,4字节,表示的范围是$-2^31$ 至 ($+2^31$)-1,可以粗略的记为在$10^9$的范围中即可。

   1.2 长整型longlong,

  一个整数占用64bit,8字节,表示范围是-2^63 至 +(2^63-1),整数取值超过2147483647的话,就使用longlong。

  对于整型数据,都可以在前面加上unsigned,以表示无符号数,但是所占的位数是一样的,例如:unsigned int 为 0 至 2^23-1,unsigned longlong为0 至 2^64-1。

对于C语言,%d 是int型的输出格式,%I64d是longlong型的输出格式,%u用来输出unsigned int类型。

2.浮点型

表示小数,一般分为单精度(float)和双精度(double)。

  2.1单精度(float)

  一个浮点数占32bit,浮点数的范围为-2^128至+2^128。

  2.2双精度(double)

  一个浮点数占64bit,浮点数范围是-2^1024至+2^1024。

对于C语言中,%f是float和double型的输出格式。一般碰到浮点数,使用double型来表示。

3.字符型

3.1字符变量和字符常量

  对于char c ;来讲,那么c就是字符变量,等待被赋值。对于字母表中的c来讲,c就是字符常量。在C语言中,字符常量用ASCII码统一编码,其中小写字母比大写字母的ASCII码值大32。字符常量必须用单引号标注起来,以区分字符变量和字符常量出现。

在C中,%c是char型的输出格式。

  3.2转义字符

比较常用的的转义字符如:\n 代表换行  \0表示空字符。

4.字符串常量

在C语言中没有单独的数据类型能够存储字符串,只能使用数组来进行表示,而C++中有string类型可以存储。

字符串常量可以作为初值赋给字符数组,并使用%s的格式输出。例如下面的例子:

#include <stdio.h>
int main(){

char str1[]="wo ai zhong guo ";
char str2[] = "da jia hao";
printf("%s,%s",str1,str2);
return 0;
}
然而不幸的是,不能把字符常量赋给字符变量,例如:char c = "qwwe";。

5.布尔型

布尔型在C++中可以直接使用,但是在C语言中必须添加stdbool.h头文件才可以使用。他的取值为true 和 false,在赋值给布尔型变量时自动转换成true(非零) 和 false (零)。对于计算机,true和false存储时分别为1和0。

6.强制类型转换

为了更好的进行运算,需要在过程中转换类型,就需要强制转换类型,例如:

#include<stdio.h>
int main(){
int a =3,b=4;
double c;
c = (double)a/(double)b;
printf("%d",a/b);
printf("%f",c);
return 0;
}

7.符号常量和const常量

7.1符号常量

  即用一个标识符来表示一个常量。其格式如下:#define 标识符 常量  (注意没有分号)。例如: #define pi 3.14  意思就是pi 代表 3.14值。(又称宏定义,即编译时是将直接对应的部分替换掉)

7.2const常量

  格式如:const 数据类型 变量名 = 常量;

 例如:const double pi = 3.14;

pi的值一旦确定就不能更改了。


8.运算符

8.1条件运算符

  A?B :C;

其含义是 若A为真,则返回B结果,若A为假,则返回C结果。

例如:c = a > b ? 7:11;

若a > b 成立,则c 为 7,否则c 为11;

8.2位运算符

 使用较少,可作为了解。

运算符含义语法效果
<<左移a<<x左移X位
>>右移a>>x右移X位
&位与a&b按位进行与运算
|位或a|b按位进行或运算
^位异或a^b按位进行异或运算
~位取反a~b按位进行取反操作





 

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值