第6章 数组、指针与字符串

1.数组:

 

数组的定义:

 

数组的使用:

 

2.一维数组的存储:

 

3.一维数组的初始化:

 

4.二维数组的存储:

 

5.数组作为函数参数

 

6.二维数组的初始化

 

7.对象数组的定义与访问

 

对象数组初始化

 

 对象数组的析构:

        当数组中每一个对象被删除时,系统都要调用一次析构函数。

8.内存空间的访问方式:

          

 

9.地址运算符:

 

10.指针的概念:

 

11.指针变量:

 

12.指针变量的初始化

 

13.指针变量的赋值运算

 

 

14.指针空值nullptr

 

15.指向常量的指针

 

 

  指针类型的常量:

 

16.指针类型的算术运算

 

 

17.指针类型的算术运算

 

18.指针与整数相加的含义

 

19.指针类型的关系换算

 

20.定义数组元素的指针

 

例:

#include <iostream>
using namespace std;
int main() {
int a[10] = { 1,2,3,4,5,6,7,8,9,0 };
for (int i = 0; i < 10; i++)
cout << a[i] << " ";
cout << endl;
return 0;
}

#include <iostream>
using namespace std;
int main() {
int a[10] = { 1,2,3,4,5,6,7,8,9,0 };
for (int i = 0; i < 10; i++)
cout << *(a + i) << " ";
cout << endl;
return 0;
}

#include <iostream>

using namespace std;
int main() {
int a[10] = { 1,2,3,4,5,6,7,8,9,0 };
for (int *p=a; p<(a+10); p++)
cout << *p<< " ";
cout << endl;
return 0;
}

21.指针数组:

 

22.以指针作为函数参数

 

 

例:

 

#include <iostream>
using namespace std;
const int N = 6;
void print(const int* p, int n);
int main(){
int array[N];
for (int i = 0; i < N; i++)
cin >> array[i];
print(array, N);
return 0;
}
void print(const int* p, int n) {
cout << "{" << *p;
for (int i = 1; i < n; i++)
cout << "," << *(p + i);
cout << "}" << endl;
}

 

23.  指针函数的定义形式

 

注意:

 

错误的例子:

 

 

 

 

24.函数指针的定义:

 

用途:实现函数的回调

 

例:

 

 

25.对象指针

 

26.this 指针

、

 

27.动态申请内存操作符 new

 

28.释放内存操作符delete

 

29.将动态数组封装成类

 

30.vector容器

 

vector对象的定义:

 

vector对象的使用:

 

posted @ 2024-05-24 20:07  萌墨  阅读(39)  评论(0)    收藏  举报