C++笔记

变量


1、最好在使用变量前定义和初始化变量,不要全部定义在文件首部。

2、全局变量会自动初始化为0,局部变量需要手动初始化。

3、使用变量时,程序会在使用点所在的局部范围内查找相应变量,如果不存在,则会查找全局变量。使用全局变量可能会引起bug和调试困难。

4、浮点型,float 、double、 long double

5、初始化变量时,最好使用{}方式,该方式定义的变量出现数据类型容量冲突时,编译器会警告,而采用 = 方式,编译器不会警告,而会出现一些难以预测的后果。

6、sizeof 函数不仅可用于数据类型,也可用于变量。

常量


1、尽量不使用#define来定义常量,使用const 最好,如const double num。

2、常量一经定义,不得被程序更改。

数组


1、数组中元素得数据类型需要一致。

2、数据的大小在程序运行时不可改变。

3、定义方式:array_datatype array_name [容量] {初始化内容},其余细节和c差不多,知道定义和初始化方式即可。

3、数组名在作为变量输出时,输出数组首元素的地址。

4、多维数组定义及初始化。

 向量


创建向量相当于创建一个对象,需要包含<vector>,同时属于标准库,不想重复使用范围解析运算符就要使用命名空间 using namespace std;

1、向量的定义与初始化。向量的大小可以在定义后改变,vector <int> num(5)定义则初始化为5个0,vector <int> num不指定空间大小则会是空向量(不是全0!),下面第三方式定义了初始空间为365的vector,每个元素为80.0

2、特性

3、对vector访问时,用[]方式则不会进行边界检查,超出索引范围将会引起意想不到的输出,建议使用.at()方法。

4、在其后添加元素使用.push_back()方法,更改已有元素用类似test_scores.at(2) = 400的方式赋值。

 5、二维向量定义方式和二维数组类似。

PEMDAS


1、运算符优先级:圆括号 、指数、乘法(除法)、加法(减法)

数据类型转换


1、使用static_cast<type>语句

混合赋值运算符


for loop


1、for loop 的comma操作符可以初始化多个变量。for下面的语句,没有{}时,只会执行最近一行代码的操作,为了方便维护和提高可读性,尽量使用{}。

 2、range based for loop     可以对数组、字符串、向量直接循环

#include <iostream>
#include <vector>

using namespace std;

int main(){
    
//    int scores[] {1,2,3,4,5};
//    
//    for(auto score : scores)
//        cout << score << endl;

    for(auto c : "string")
        cout << c << endl;
    
    return 0;
}

do while loop


do while loop中用于条件检查的变量不可在循环体内部定义,否则编译器会报错

continue  break 语句


可用于c++中所有循环结构中,但不要过多使用,会使循环变得很复杂。

分支


1、if语句,if块内可定义变量,但只能用于定义的块区域内。

2、switch case语句

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

李亚有鸭梨

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

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

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

打赏作者

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

抵扣说明:

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

余额充值