C++Primer第五版 第二章习题答案(21~30)
2016-11-19 10:24
253 查看
2.21
1:非法定义,类型不一致
2:非法定义,没有取址操作符
3:合法定义。
2.22
第一个判断的是:P指针是否为空指针
第二个判断的是:P指针所指向的对象是否为0
2.23
不可以,指针是否有效还不知道呢!!!
2.24
因为lp的类型不是int,而void定义了一个空指针,可以接受任意类型的对象。
2.25
1:ip是一个int类指针型的,i是一个int型的变量,r是一个int型的引用。
2;i是一个int型的变量,ip是一个空指针。
3:ip是一个int类型的指针,ip2是一个int类型的变量。
2.26
涉及知识点:const表示的不可改变的量!:const用在变量定义时的类型前表示该变量不可改变,注意:该变量必须初始化(可以在运行时初始化)。
a:不合法,变量未初始化。
b:合法
c:合法
d:不合法,变量sz是一个const变量,不能被改变。
2.27
涉及知识点:
指针与const:1:指向常量的指针:要想存放变量的地址,必须使用指向常量的指针:const int *p
2:常量指针:指针自身是一个对象,不可变。int *const p = &pi (常量指针必须初始化!!!)
3:指向常量的常量指针。const int *const p (不仅指针本身不可变,指针所指对象也不可变)
引用与const:
将引用定义为常量:const int &i
a:引用r的赋值对象必须是一个对象,所以不合法
b:合法,将p2设为一个常量指针,初始化为i2对象的地址
c:合法,将i设为常量,r设置为常量的引用(注意const int &r = 0 是正确的,但是int &r = 0是不正确的)
d:合法,p3为指向常量的常量指针,初始值为i2的地址
e:合法,p1为指向常量的指针,初始值为i2的地址
f:使用不合法
g:合法,正常的赋值。
2.28
a:不合法,常量指针cp未初始化
b:不合法,常量指针p2未初始化
c:不合法,常量ic未初始化
d:不合法,常量指针p3未初始化
e:合法
2.29
a:合法
b:不合法,const int 和 int 不是一个类型,指向常量的指针在赋值时必须类型一致
c:和b相同
d:不合法,p3是一个常量指针,不能被再次赋值
e:不合法,p2是一个常量指针,不能被再次赋值
f:不合法,ic是个常量,不能被再次赋值
2.30
涉及知识点:
顶层const:指的是本身不可以被改变。
底层const:指的是自身所指对象不可以被改变。
用于声明引用的const都是底层const
v2是顶层const;
p2是底层const;
p3最左是底层,右侧是顶层const;
其他都不是const;
1:非法定义,类型不一致
2:非法定义,没有取址操作符
3:合法定义。
2.22
第一个判断的是:P指针是否为空指针
第二个判断的是:P指针所指向的对象是否为0
2.23
不可以,指针是否有效还不知道呢!!!
2.24
因为lp的类型不是int,而void定义了一个空指针,可以接受任意类型的对象。
2.25
1:ip是一个int类指针型的,i是一个int型的变量,r是一个int型的引用。
2;i是一个int型的变量,ip是一个空指针。
3:ip是一个int类型的指针,ip2是一个int类型的变量。
2.26
涉及知识点:const表示的不可改变的量!:const用在变量定义时的类型前表示该变量不可改变,注意:该变量必须初始化(可以在运行时初始化)。
a:不合法,变量未初始化。
b:合法
c:合法
d:不合法,变量sz是一个const变量,不能被改变。
2.27
涉及知识点:
指针与const:1:指向常量的指针:要想存放变量的地址,必须使用指向常量的指针:const int *p
2:常量指针:指针自身是一个对象,不可变。int *const p = &pi (常量指针必须初始化!!!)
3:指向常量的常量指针。const int *const p (不仅指针本身不可变,指针所指对象也不可变)
引用与const:
将引用定义为常量:const int &i
a:引用r的赋值对象必须是一个对象,所以不合法
b:合法,将p2设为一个常量指针,初始化为i2对象的地址
c:合法,将i设为常量,r设置为常量的引用(注意const int &r = 0 是正确的,但是int &r = 0是不正确的)
d:合法,p3为指向常量的常量指针,初始值为i2的地址
e:合法,p1为指向常量的指针,初始值为i2的地址
f:使用不合法
g:合法,正常的赋值。
2.28
a:不合法,常量指针cp未初始化
b:不合法,常量指针p2未初始化
c:不合法,常量ic未初始化
d:不合法,常量指针p3未初始化
e:合法
2.29
a:合法
b:不合法,const int 和 int 不是一个类型,指向常量的指针在赋值时必须类型一致
c:和b相同
d:不合法,p3是一个常量指针,不能被再次赋值
e:不合法,p2是一个常量指针,不能被再次赋值
f:不合法,ic是个常量,不能被再次赋值
2.30
涉及知识点:
顶层const:指的是本身不可以被改变。
底层const:指的是自身所指对象不可以被改变。
用于声明引用的const都是底层const
v2是顶层const;
p2是底层const;
p3最左是底层,右侧是顶层const;
其他都不是const;
相关文章推荐
- C++Primer第五版 第十五章习题答案(21~30)
- C++Primer第五版 第七章习题答案(21~30)
- C++Primer第五版 第九章习题答案(21~30)
- C++Primer第五版 第四章习题答案(21~30)
- C++Primer第五版 第十章习题答案(21~30)
- C++Primer第五版 第十二章习题答案(21~30)
- C++Primer第五版 第十三章习题答案(21~30)
- C++Primer第五版 第十八章习题答案(21~30)
- C++Primer第五版 第六章习题答案(21~30)
- C++Primer第五版 第三章习题答案(21~30)
- C++Primer第五版 第十六章习题答案(21~30)
- C++Primer第五版 第十一章习题答案(21~30)
- C++Primer 中文版 第五版 第二章课后习题答案
- C++Primer第五版 第二章习题答案(1~10)
- C++primer[习题][第二章][21-30]
- C++Primer第五版 第十九章习题答案(21~26)
- C++Primer第五版 第五章习题答案(21~25)
- C++Primer第五版 第二章习题答案(31~41)
- C++Primer第五版 第九章习题答案(11~20)
- C++Primer第五版 第十六章习题答案(31~40)