C++第一章知识点合集(变量,关系运算符,逻辑运算符,ascll值,强制类型转换与自动类型转换)

目录

程序基本框架

怎么定义一个变量

变量的命名规则

算数运算符

%:取余运算符

自增运算符

自减运算符

赋值运算符

复合赋值运算符

关系运算符

逻辑运算符

逻辑运算符优先级问题

十进制转换为二进制、八进制、十六进制

1、十进制转二进制

十进制转八进制

十进制转十六进制

原码补码反码

Ascll值

强制类型转换

自动类型转换

const常量


第一章知识点合集

程序基本框架

#include<iostream>

using namespace std;

int main()

{

}

怎么定义一个变量

数据类型 变量名= 变量值

常见的数据类型 int(整型)char(字符型) double(双精度浮点型)

float(单精度浮点型)bool(布尔类型)string(字符串类型)

Int  a =1;char  b = ‘c’;  string  c =”abcd123”;

float  d =1.0;  double  e=2.0  bool  f =1;  / bool  g =(1>2) 返回0(代表假) 布尔变量的返回值只有1(代表真)/0(代表假)

变量的命名规则

  1. 只能由字母(a-z,A-Z),数字,下划线所组成。
  2. 开头不能为数字
  3. 不能以关键字命名

算数运算符

%:取余运算符

注意%运算符的左右两边不能为小数

自增运算符

自增:++ 作为独立的语句使用: 前++和后++都完全等价于 i=i+1; 作为表达式使用 前++:++i 先自增后赋值 后++:i++先赋值后自增

当 自增 当做一个独立语言使用时,不管是 ++i; 还是 i++; 都是一样的,等价
当 自增 当做一个 表达式使用时 j = ++i 等价 i = i + 1; j = i;
当 自增 当做一个 表达式使用时 j = i++ 等价 j = i; i = i + 1;

自减运算符

自减:-- 作为独立的语句使用: 前--和后--都完全等价于 i=i-1; 作为表达式使用 前----i 先自后赋值 后--:i--先赋值后自

当 自减 当做一个独立语言使用时,不管是 --i; 还是 i--; 都是一样的,等价
当 自减 当做一个 表达式使用时 j = --i 等价 i = i - 1; j = i;
当 自减 当做一个 表达式使用时 j = i-- 等价 j = i; i = i - 1;

赋值运算符

赋值表达式 : 变量  赋值运算符  表达式

并不是任何形式的数据都可以作为左值的,左值应当为存储空间并可以被赋值。变量可以作为左值,而算术表达式a+b就不能作为左值,常量也不能作为左值。

复合赋值运算符

在赋值符=之前加上其他运算符,可以构成复合的运算符

a+=3 等价于a=a+3

x*=y+8 等价于x=x*(y+8)

x%=3 等价于x=x%3

如果赋值符右边是包含若干项的表达式,则相当于它有括号。例如,

x%=y+3等价于x=x%(y+3),切勿错写为x=x%y+3。

关系运算符

由关系运算符所组成的关系表达式最后返回的结果只有0(代表假)1(代表真)

逻辑运算符

“&&”和“‖”是双目运算符,要求有两个运算对象(操作数); “!”是单目运算符,只要有一个运算对象

优先次序:!(非)→&&(与)→‖(或), 即“!”为三者中最高的; 逻辑运算符中的“&&”和“‖”低于关系运算符,“!”高于算术运算符

逻辑运算结果不是0就是1,不可能是其他数值。而在逻辑表达式中作为参加逻辑运算的运算对象可以是0(“假”)或任何非0的数值(按“真”对待)

逻辑运算符优先级问题

十进制转换为二进制、八进制、十六进制

1、十进制转二进制

(1)十进制转二进制的转换原理:除以2,反向取余数,直到商为0终止。
(2)具体做法:

十进制转八进制

(1)转换原理:除以8,反向取余数,直到商为0终止。

(2)具体步骤与二进制一样

十进制转十六进制

(1)转换原理:除以16,反向取余数,直到商为0终止。
(2)具体步骤也和二进制、八进制一样,重复上述做法即可得到十六进制数。
例如:十进制数796转换为十六进制数

需要注意的是,十六进制数是由0-9和A-F(或者a-f)组成的,A相当于十进制中的10,B相当于11,依次类推,F相当与15,上述事例中取得的余数12即为十六进制中的c

原码补码反码

原码

原码的表示与机器数真值表示的一样,即用第一位表示符号,其余位表示数值,例如的十进制的的正负1,用8位二进制的原码表示如下∶

【+1】=原【00000001】

【-1】=原【10000001】

补码

补码的表示方法为∶

正数的补码是其原码本身。

负数的补码是在其原码的基础上,符号位不变,其余各位取反后加1(即在反码的基础上加1

【+1】=原【000000001】=反【000000001】=补∶【0000000001】

【-1】=原∶【1000 0001】=反∶【111110】=补∶【111111111】

反码

反码的表示方法为:

正数的反码是其原码本身。

负数的反码是在其原码的基础上符号位不变其他位按位取反。

【+ 1】 =原:[0000 0001 ]=反:[0000 0001 ]

【-1】  =原:[10000001]=反:[11111110]

Ascll值

大写字符(A-Z)+ 32 可以转换为小写字符(a-z)

小写字符(a-z) - 32 可以转换为大写字符(A-Z)

强制类型转换

在C语言中,强制类型转换是通过“(目标类型)变量名”或者“目标类型(变量名)所实现的”,例如(int)3.14或者int(3.14),前者的方式常称之为C风格的类型转换,后者则被称之为函数风格的强制类型转换

自动类型转换

Char类型与int类型相运算结果为int类型

Char类型与float类型相运算结果为float类型

Char类型与double类型相运算结果为double类型

Int类型与double类型相运算结果为double类型

Int类型与float类型相运算结果为float类型

Int类型与float类型相运算结果为float类型

double类型与其余两种类型相运算结果都为double类型

const常量

调用形式:const 类型 变量名 = 常量;


每个const常量都必须进行初始化。例子:const int a = 10; a就是一个整型常量;

定义a为一个整型变量,指定其值为10,而且在变量存在期间其值不能改变

  • 16
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

久 泽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值