《C++ Primer》第五版课后习题解答_第二章(3)(21-29)
来源:互联网 发布:吉大动物医学就业知乎 编辑:程序博客网 时间:2024/06/07 09:12
系统环境: windows 10 1703
编译环境:Visual studio 2017
2.21
(a) 非法,指针与对象数据类型应相同;
(b) 非法,不能把 int 变量直接赋给指针,即使 int 变量的值恰好是零也不行;
(c) 合法,ip 存放着 i 的地址。
2.22
if (p) 当 p 不是空指针时,执行 if 中的语句;
if (*p) 当 p 指向地址所保存的值不是0时,执行 if 中的语句。
2.23
(试图从网上查资料,未果,大家的解释看不懂。标注一下,学完了回头看。给定一个指针,如何判断这个指针是否已经指向一个合法的对象?)
2.24
因为 void 类型的指针可以存放任意对象的地址,所以 p 合法;
lp 的类型和 i 的类型不同,不能赋值,故 lp 非法。
2.25
(a)
ip: int 类型的指针,未初始化
i: int 类型的变量
r: int 类型的引用
(b)
i: int 类型的变量
ip: int 类型的空指针
(c)
ip: int 类型的指针
ip2: int 类型的变量
2.26
(a) 不合法,const 变量定义时必须初始化;
(b) 合法;
(c) 合法,const 变量 sz 初始化为 int 变量 cnt 的值;
(d) ++cnt 合法;
++sz 不合法,const 对象不能改变其值。
2.27
(a) 不合法,引用的初始化必须是对象;
(b) 合法,指针 p2 将一直指向了 i2;
(c) 不合法,r 是常量引用 //注意!
(d) 合法,p3 是指向常量对象 i2 的常量指针;
(e) 合法,p1 是指向常量对象 i2 的指针;
(f) 不合法,const 是关键字,不能作为引用的标识符;
(g) 合法,i2 被赋给了 i 的值,r 绑定了 i。
【总觉得这道题出得不好,没有上下文,不能判断各种变量名引用名与其是否已初始化】
2.28
(a) 不合法,int 型变量 i,int 型常量指针 cp 必须初始化;
(b) 不合法,int 型指针p1,int 型常量指针 p2 必须初始化;
(c) 不合法,变量引用 r 绑定了常量 ic;
(d) 不合法,指向常量对象的常量指针 p3 必须初始化;
(e) 合法,指向常量对象的指针 p。
//所有常量必须初始化,不管是数值常量还是常量指针。
2.29
(a) 合法 常量对象 ic 的值复制给了 int 型变量 i;
(b) 合法,把 p3 指向对象的地址赋给 p1;
(c) 不合法,把常量对象 ic 的地址赋给了非指向常量的指针;
(d) 合法;
(e) 不合法,常量指针 p2 指向的对象不能改变;
(f) 不合法,常量对象 ic 的值不能改变。
- 《C++ Primer》第五版课后习题解答_第二章(3)(21-29)
- 《C++ Primer》第五版课后习题解答_第三章(3)(21-29)
- 《C++ Primer》第五版课后习题解答_第二章(1)(01-08)
- 《C++ Primer》第五版课后习题解答_第二章(2)(09-20)
- 《C++ Primer》第五版课后习题解答_第二章(4)(30-38)
- 《C++ Primer》第五版课后习题解答_第二章(5)(39-42)
- 《C++ Primer》第五版课后习题解答_第五章(3)(15-19)
- 《C++ Primer》第五版课后习题解答_第四章(2)(21-33)
- 《C++ Primer》第五版课后习题解答_第四章(3)(34-38)
- 《C++ Primer》第五版课后习题解答_第六章(3)(16-26)
- 《C++ Primer》第五版课后习题解答_第五章(1)(01-08)
- 《C++ Primer》第五版课后习题解答_第五章(2)(09-14)
- 《C++ Primer》第五版课后习题解答_第五章(4)(20-25)
- 《C++ Primer》第五版课后习题解答_第三章(1)(01-05)
- 《C++ Primer》第五版课后习题解答_第三章(2)(06-20)
- 《C++ Primer》第五版课后习题解答_第三章(4)(30-36)
- 《C++ Primer》第五版课后习题解答_第三章(5)(37-45)
- 《C++ Primer》第五版课后习题解答_第四章(1)(01-20)
- Redis原理介绍
- es6链接
- jquery confirm3
- JAVA Map转List
- 求最长不下降序列
- 《C++ Primer》第五版课后习题解答_第二章(3)(21-29)
- ActoiveMQ主备环境搭建
- UVa1605 例题8-2 联合国大楼(Building for UN,ACM/ICPC NEERC 2007)
- 【stm32f103】USART RX实现(寄存器版)
- 真正理解 git fetch, git pull 以及 FETCH_HEAD
- Spring编程<六>
- GCD & LCM (数学基础)
- 登录验证码的制作!
- JAVAEE之Spring学习(三)---通过aop切面实现事务处理