内容来源于:黑马
集成开发环境:CLion
先前学习完了C++第1章的内容:
C++ 入门速通-第1章【黑马】-CSDN博客
C++ 入门速通-第2章【黑马】-CSDN博客
下面继续学习第3章:
数组:











字符数组:



多维数组:




指针基础:





野指针和空指针:




指针运算:



动态内存分配:




数组元素的移除:


数组元素的插入:
简单案例:
// 在下面的数组下标1和3中插入数字:11和66int *pArr2 = new int[5] {1,3,5,7,9};// 创建新数组int *pNewArr2 = new int[7];// 循环新数组,挨个进行元素填充(插入位置填充新元素)int offset = 0;for (int i = 0; i < 7; i++){if (i == 1){pNewArr2[i] = 11;offset++;continue;}else if (i == 3){pNewArr2[i] = 66;offset++;continue;}// 不是插入位置,从老数组中提取元素放入新数组中// 公式:老数组的元素下标 + offset = 新数组的元素下标pNewArr2[i] = pArr2[i - offset]; // 此时的i是新数组的下标}delete[] pArr2;pArr = pNewArr2;for (int i = 0; i < 7; i++){cout << "新数组的元素是: " << pNewArr2[i] << endl;}
指针悬挂:


注意: p1正常释放, 没有问题, p2因为引用了p1, 成为了悬挂指针。搞清楚,野指针是指被声明但没有被赋值的指针

const指针:





C++一套通关系列课程在线笔记:https://www.yuque.com/bigdata-caoyu/newcp
参考:
第三章-01_数组的定义_哔哩哔哩_bilibili
