刚在网上转看到几道对于巩固基础很有帮助的C++基础题,反正闲着也是闲着,就做了下,具体题型如下:
答案是我自己写,不一定对,如果有朋友看到不对的,欢迎指正,万分感谢!
1. 一个指针类型的对象占用内存的4个字节的存储空间.
2. 一个指针类型指向一个数据对象,它保存着该数据对象的 地址 ,若数据对象为DataType类型,则该指针的类型为DataType*.
3. 若要把一个整形指针P转换为字符指针,则采用的强制转换表达式为 (char*)p.
4. 假定一个数据对象为int *类型,则采用的强制转换表达式为 (int*)p.
5. 假定P是一个指向整数对象的指针,则用*p表示该整数对象,用P表示指针变量P的地址.
6. 假定P是一个指针,则*P++运算首先访问p所指的对象,然后使p的值增1.
7. 假定P是一个指针,则(*P)++运算首先访问p所指的对象,然后使p所指的对象的值增1.
8. 假定P所指对象的值为25,P+1所指对象的值为42,则*P++的值为_25_.
9. 假定P所指对象的值为25,P+1所指对象的指为42,则*++P的值为_42_.
10. 假定P所指对象的值为25,P+1所指对象的值为42,则执行(*P)++运算后,P所指对象的值为__26_.
11. 假定P所指对象的值为25,P+1所指对象的值为42,则执行*(P++)或*P++运算后,P所指对象的值为25.
12. 假定A是一个一维数组,则A[i]的指针访问方式为_*(a+i)_.
13. 一个数组的数组名实际上是指向该数组_首位_元素的指针,并且在任何时候都不允许_ 改变_它.
14. 若要定义整形指针P并初始指向X,则所使用的定义语句为___int *p=&X__.
15. 若P指向X,则___*p___与X的表示是等价的.
16. 在一个二维数组int a[m][n]中,包含的一维元素a[i]的类型为__含n个int元素的指针数组__,访问a[i]时返回值的类型为__int a[]__.
17. 假定a是一个二维数组,则a[i][j]的指针访问方式为__*(*(a+i)+j)_.
18. 若y是x的引用,则&y和&x的值__相同_,即为变量___x___的地址.
19. 招待int *p=new int[10]操作,使p指向动态分配的数组中下标为___0__的元素,该元素可表示为__*p__或__p[0]__.
20. 执行char *p=new char(‘a’)操作后,p所指向的数据对象的值为__a__.
21. 执行_delete p_操作将释放由P所指向的动态分配的数据空间.
22. 执行_delete []p操作将释放由P所指向的动态分配的数组空间.