之前我们讲到了基本的运算符,这些运算符对上面计算的运算符进行补充
1. 逻辑运算符1.1. 与(&&)运算
遵循逻辑“有假必假”
例如:
(1 && 1) ==> true =1(0 && 1) ==> false =0
1.2.或(||)运算
遵循逻辑“有真必真“
1.3. 非(!)运算!0 ==> 1!1(不为0) ==>0
与的优先级高于或
同时出现先计算与
优先级:或 < 与 < 非
2. 逗号运算符
逗号运算符的级别是最低的,输出以逗号分割最后的一个数;
看如下一段代码:
# include <iostream>using namespace std;int main(){ int a; a = 7+8,8*6,20/8; cout << a << endl; return 0;}
我们预想中输出的结果为:2
但我们运行一下
输出为15
这是为什么呢???
这是因为我们程序对字符分割的理解出现了问题
程序默认的分 ...
计算机基础
未读
ASCII(发音:,American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语,而其扩展版本延伸美国标准信息交换码则可以部分支持其他西欧语言
记住10进制编码
例如蓝桥云课第二题:
即从A的十进制编码加11(A到L的字母间隔数)
即直接cout 出结果76即可
1.1 使用软件visual studiovisual studio 官网如下:https://visualstudio.microsoft.com/
下载并安装即可
进入Installer 安装页面
选择C++的桌面开发
可以在安装位置目录改文件
1.2 了解visual studio基本操作1.2.1 了解如何创建一个新项目
点击文件–>新建–> 项目
选择一个空项目即可开启
按Ctrl+s 即可确定保存路径
在右侧管理器课看到如下页面
今天我们要复现的是所有程序学习中入门的第一课 Hello World
所有我们细节添加源文件
选择新建项
命名并选择代码位置,类型选择Cpp
1.2.2 快捷键ctrl+k+c 开启注释
ctrl+k+u 取消注释
1.3 编译Debug模式:可以执行到某一步骤进行调试
Release模式: 非常精简,发布,运行快
2.引入一个变量2.1 变量的声明数据类型为字符串
# include <iostream>int main() //程序的入口{ //变量 std::string words_to_c ...
1 变量
1.1 整型(int)
注意:C++,int类型自动向下取整,自动类型转换可能会导致数据丢失
整数,例如 10 ,2 ,0, -996
大小4byte(32位二进制数)
1byte –> 8位二进制数
范围
1.1.1 int的小弟和大哥(short/long)short 短整形 2bytes
long 长整形
4 or 8 bytes (取决于编译器和操作系统)
Tips: 可以用sizeof()运算符获得数据类型或者变量大小;
unsigned int
无符号整数: 0,1,2,3…
4bytes
1.2 单个字符(char)1bytes 相当于一个无符号整数—>ASCII码–>字符
1.3 浮点数(float/double)机制:科学计数法
数值 = 尾数 x 底数的指数次幂
1.4 布尔(bool)真/假: true/false –> keywords(保留字)
1byte
本质 1或0
while(True){}
1.5 字符串string ...
C++基础
未读01 为什么使用loop
将result 设置为0
将待加数设置为首项 //初始化变量
用result_Add 进行重复 得到新的result
将add加上数列的公差 //每次循环进行的操作
判断add是否超出末项 –> 标志计算完成
得出result //判断循环的出口条件
02 循环的优点
计算复杂性高
逻辑清晰有规律
重复计算
并行
03 循环类型03.01 for 循环int i,resultresult = 0for (i=0,i<=100,i++) //i++ 步长=1 i+=2 步长=2 i+=-1 步长=-1 以此类推{ result = result + i;}
i<=100的关系表达式值为bool,该范围即为出口条件
推荐for循环使用三段式写法
03.02 while 循环int i = 1 ,result = 0 ;while(i<=100){ result = result +i' i++;}
03.03 do-wh ...
C++基础
未读01 前言数组存储基础数据类型:
自定义数据类型
02 如何声明/定义一个数组
指明数组元素的类型
指明数组名称
指明数组大小
声明和定义的区别:
03 数组的初始化(定义的同时赋初值)
给所有元素都指明值
int nArray[3] ={0,1,2};// 0 1 2
给所有元素赋同一个值
int nArray[3] = {0};// 0 0 0
整体赋值的唯二方式如上
04 数组的初始化(先定义后赋初值)通过循环遍历数组:(ARRAY_SIZE 可以使用sizeof()进行获取)
for (int i=0;i<ARRAY_SIZE;i++){ nArray[i]=i; //或通过任何合理的其它方式进行赋值}
通过数组名和下标访问数组元素
:warning: 注意: 数组下标从0开始1到数组大小-1结束
原理即为爬楼梯原理
04.01 常见问题–数组越界为什么会发生这种情况?
使用小于0或者大于(大于-1)的下标访问数组元素
或未初始化数组元素
所以要确保访问元素的范围为[ ...
C++基础
未读
标准库:无需格外安装
模板:把常用的数据结构和算法实现了一遍
含有的常用模板
字符串类
std:: string
智能指针
…
序列容器
std::vector
std::list
std::deque
…
容器适配器
std::stack
std::queue
…
算法
排序算法
查找算法
vector
可变长数组 / 动态数组
vector 可以改变大小和容量
vector可以通过下标进行操作,也可以通过封装好的方法往里添加、读取或去除元素(写好的函数直接用)
usage:
1.声明一个vector
std::vector<int> nVec;//同数组一样,需要指明类型在<>内//无需指明大小
2.往vector放入一个元素
nVec.push_back(13);
3.从vector里(尾部)拿出一个元素
nVec.pop_back();
4.vector的容量(能装多少):
nVec.capacity(); //访问变量的一个成员,只不过这个成员是函数
5.vector放了多少东西(大小):
nV ...