C++基础思维导图

c++基础思维导图

预备知识

变量的使用

  • 语法变量的类型 变量名 = 初始值;

  • 变量存在的意义在于方便我们管理内存空间

  • 变量的类型

    • int
    • float
    • double
    • short int
    • long
    • long long

常量的使用

  • #define 宏常量

    • 语法: #define 常量名
      常量值 (通常在文件的上方定义)
  • const修饰变量

    • 语法: const 数据类型 常量名 =
      常量值;(通常在变量定义前加关键字const,不可以修改)

文件中只能包含一个main() 函数,它是程序的入口

单行注释和多行注释

  • 单行注释: //
  • 多行注释:/**/

数据类型

short(短整型)2字节

int(整形) 4字节

long(长整形)windows是4字节;linux是4字节(32位);8字节(64位)

long long(长长整形) 8字节

字符串

  • c类型:char str[] = "hello world";
  • c++类型:string str2 = "hello world";(用之前需要包含一个头文件 #include)

关键字

  • int;long;try;if;else;break;continue;for;goto;public;delete;true等等

标识符

  • 标识符不能是关键字
  • 标识符只能由字母、数字、下划线组成
  • 第一个字符必须为字符或下划线
  • 标识符中字母区分大小写

布尔数据类型

  • bool flag = true;输出1代表true是1;flag = false;输出0代表false是0;在c++中非0的外的数字都是1;bool类型占一个字节

字符型

  • char ch = 'a';字符型占一个字节,是单引号,字符型变量并不把字符本身放到内存中存储,而是将对应的acii编码放入到存储单元

转义字 符

  • \

szieof关键字

  • sizeof关键字可以统计数据类型所占内存大小

实型

  • float 4字节
  • double 8字节

数据输入cin

cin >> 变量;

cin输入数据的时候末尾不能添加换行符;

数据的输出cout

cout << 变量 << endl;(其中endl是换行符)

运算符

算数运算符

        • / %
          ++ --
  • ++i;前置递增( “ -- ”同理)

    • 表示先执行自增语句
    • a = 2;b = ++a; (a = 3;b=3)
  • i++;后置递增( “ -- ” 同理)

    • 表示后执行自增语句
    • a = 2;b = a++;(a=3,b=2)
  • 使用/时注意,当数据所得结果除不尽时,向下取整

    • a = 3/2;(a=1)
  • (表示除以2)

  • <<(表示乘以2)

逻辑运算符

  • !
  • &&
  • ||

比较运输符

  • ==
  • !=
  • <
  • =

  • <=

赋值运算符

  • =
  • *=
  • /=
  • %=
  • +=
  • -=

程序流程控制

顺序结构

选择结构

  • if elif else; (可以嵌套)
  • switch(){case1:break;case2:continue;default:contine;}(可以嵌套)

循环结构

  • while(..){..};do{...}while();(可以嵌套)

三目运算符

  • 变量1 >变量2?变量1:变量2

跳转语句(break,continue,goto)

c++标准库

标准函数库(这个库是通用的、独立的,不属于任何类的函数组成的。函数库继承自c语言)

  • 输入输出i/o
  • 字符串和字符处理
  • 数学
  • 时间、日期本地化
  • 动态分配
  • 其他
  • 宽字符函数

面向对象类库(这个库类及其相关函数的集合)

  • 标准c++ I/O
  • string类
  • 数值类
  • STL容器类
  • STL算法
  • STL函数对象
  • STL迭代器
  • STL分配器
  • 本地化库
  • 异常处理类
  • 杂项支持库

数组

一维数组

  • 一维数组案例-元素逆置
  • int start = 0;

int end = sizeof(arr)/sizeof(arr[0]) -1 ;

while(start<end){

int temp = arr[start];

arr[start]=arr[end];

arr[end] = temp;

start++; end--;

}

  • 冒泡排序

二维数组

函数

函数的定义

函数的调用

函数的值传递

函数的常见样式

  • 有无参数,有无返回值

函数的声明

函数的分文件编写

  • 记住需要包含头文件

指针

指针的定义和使用

指针所占用的内存空间

  • 在32位操作系统之中指针都是占的4字节
  • 在64位操作系统之中指针都是占8字节

空指针和野指针

  • 空指针是指变量向内存中编号为0的空间(空指针是不能访问的)
  • 空指针; int * p = NULL;
  • 0~255之间的内存编号都是系统占用的,因此不可以访问
  • 野指针表示指针标量指向非法的内存空间

const修饰指针

  • const修饰指针叫做常量指针

    • 指针指向的值不能修改,但是指针的指向可以修改
    • int a;

int b;

int *p=&a;

const int * p = &a;

  • const修饰常量叫做指针常量

    • 指针指向的值可以修改,但是指针的指向不能修改
    • int a;

int b;

int *p=&a;

int * const p = &a;

  • const即修饰指针,又修饰常量

    • 指针指向和指向的值都不能改
    • const int * const p = &a;

指针和数组

  • int arr[10] = {1,2,3,4,5,6};

int *p = arr;//指针访问第一个元素

指针和函数

  • 地址传递的作用
 
posted @   jerry-autumn  阅读(534)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示