欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

类型、运算符与表达式

程序员文章站 2024-03-25 10:45:46
...

1. 变量:装数据的容器,数据变,容器不变

变量在使用前要先定义,基本格式:变量类型 变量名1,变量名2,……;

Ex:int a,b,c;int a=0,b,c=0;//初始化

2. 变量名:由字母(‘_’被看作字母)和数字组成的序列,但第一个字符必须是字母;大小写字母是有区别的;关键字不能作为变量名

3. 四种基本类型

char 字符型,占用一个字符长度,存放一个字符

int 整型,通常占4个字节

float 单精度浮点型

double 双精度浮点型

4. 施加在基本类型上的限定符

short int a;//int可省略不写

long int a;

short 限定符尽可能的使int变短,long尽可能的使int变长

signed与unsigned可用来限定char型和所有整型

signed 整型等价于整型

unsigned 整型使得原有整型长度不变,符号位变成了数据位,仅能表示0和正数

signed char 强制char可以存储有符号整数

unsigned char 强制char可以存储无符号整数

5. 整数常量进制表示

O 表示八进制

OX 表示十六进制

6.字符常量

使用单引号将字符括起来,参与运算时对应的是ASCII码值

7. 转义字符(一般不可显示的,带有功能性的字符)

\a 响铃符

\n 换行符

\0 字符串结束的标识

8. 字符串常量

用双引号包裹起来的≥0的字符组成的序列为字符串常量

9. 算数运算符:+、-、/、*、%、++自增、--自减

%取余:x%y结果是x除以y的余数部分;x和y必须是整型操作数;在有负操作数的情况下,取模运算结果的符号取决于具体机器的实现

/除法:整数除法会截断结果中的小数部分

++自增:y=++x表示先自加后赋值;y=x++表示先赋值后自加

10. 关系运算符:<、>、<=、>=、==等于、!=不等于

x>y x大于y返回真,否则返回假

x>=y x不小于y返回真,否则返回假

x==y x等于y返回真,否则返回假

11. 逻辑运算符:&&且,||或,!非

12. 赋值运算符:=、+=、-=、/=、%=

a%=10;等价于a=a%10;

13. 位运算符:&、|、<<左移一位、>>、^

<<左移一位:包含处理函数#include<bitset>

Ex:

#include<iostream>
#include<bitset>
using namespace std;

int main(){
	short int x=-178;
	short int y=x<<1;
	cout<<bitset<sizeof(x)*8>(x)<<endl;
	cout<<bitset<sizeof(y)*8>(y)<<endl;
	cout<<y<<endl;
	return 0;
} 


结果:
1111111101001110
1111111010011100
-356

14. 类型转换(只体现在结果上不改变被转换变量的类型)

 

(1)自动转换

a. 赋值语句中的自动转换:float a=100;int b=a;

Ex:

#include<iostream>
using namespace std;

int main(){
	unsigned int a=1;
	int b=-2;
	long c=-2;
	cout<<a+b<<endl;
	cout<<a+c<<endl;
	return 0;
}


结果:
4294967295
-1

 

b. 混合运算中的自动转换,短的类型向长的类型转换:1+1.1

类型、运算符与表达式

(2)强制转换

(类型名)表达式

Ex:(float)a;//将变量a转换为float类型

(int)(b+c);//把表达式a+b的结果转换成int型

(float)5;//将数值5(默认为int类型)转换为float型