简单练习
本章的简单练习包括两部分。第一部分练习建立对自由空间数组的理解,并与vector进行比较:
1.使用new分配一个由10个int组成的数组。
2.使用cout打印这10个int的值。
3.使用delete[]释放这个数组。
4.编写一个函数print_array10(ostream&os,int*a),将a(假设包含10个元素)的值打印到os。
5.分配一个由10个int组成的数组;用值100、101、102等初始化数组;打印数组的值。
6.分配一个由11个int组成的数组;用值100、101、102等初始化数组;打印数组的值。
7.编写一个函数print_array(ostream&os,int*a,int n),将a(假设包含n个元素)的值打印到os。
8.分配一个由20个int组成的数组;用值100、101、102等初始化数组;打印数组的值。
9.你是否记得删除这个数组?(如果没有,删除它。)
10.重复执行第5、6、8步,使用一个vector来代替数组,使用一个print_vector()来代替print_array()。
第二部分集中在指针及指针与数组的关系上。使用来自上一个练习的print_array():
1.分配一个int,将它初始化为7,并将它的地址分配给变量p1。
2.打印p1的值和它指向的int的值。
3.分配一个由7个int组成的数组;将它初始化为1、2、4、8等;将它的地址分配给变量p2。
4.打印p2的值和它指向的数组的值。
5.声明一个名字为p3的int*,并使用p2来初始化它。
6.将p1赋值给p2。
7.将p3赋值给p2。
8.打印p1和p2的值和它们指向的数组的值。
9.释放所有从自由空间分配的内存。
10.分配一个由10个int组成的数组;将它初始化为1、2、4、8等;将它的地址分配给变量p1。 ...