《C++程序设计语言》(特别版)第四章答案
来源:互联网 发布:淘宝买踏板车可靠吗 编辑:程序博客网 时间:2024/05/16 09:16
1.(*2)让“Hello,world”程序运行。如果程序无法按所写的形式运行,请看B.3.1节
参考解答:
#include <iostream>using namespace std;int main(){ cout<<"Hello,world!\n"; return 0;}
2.(*1)对于4.9节的每个声明做下面的事情:如果该声明不是一个定义,请为它写一个定义。如果该声明时一个定义,请改写,使它成为不是定义的声明
参考解答:略
3.(*1.5)写一个程序打印出各种基本类型,几个指针类型和几个你所选择的枚举类型的大小。使用sizeof运算符。
参考解答:
#include <iostream>#include <typeinfo>template <typename T>struct Type{ static void print() { std::cout<<"sizeof("<<typeid(T).name()<<")=" <<sizeof(T)<<std::endl; }};struct Polymorph{virtual ~Polymorph(){}};enum Bit{zero,one};enum Intensity{black=0,brigthtest=100};int main(){//基本整形类型:Type<bool>::print(); //有可能输出1,也有可能不是Type<char>::print();//输出一定是1Type<signed char>::print();Type<unsigned char>::print();Type<wchar_t>::print();Type<signed short>::print();Type<unsigned short>::print();Type<signed int>::print();Type<unsigned int>::print();Type<signed long>::print();Type<unsigned long>::print();#ifdef LONGLONG_EXITType<signed long long>::print();Type<unsigned long long>::print();#endif//基本浮点型:Type<float>::print();Type<double>::print();Type<long double>::print();//指针类型Type<int*>::print();Type<int(*)()>::print(); //指向函数的指针Type<void(Polymorph::*)()>::print();//指向成员函数的指针(在这里,是一个指向虚函数表的虚指针)Type<void*>::print();//有可能比int*大(很少的情况下).//枚举类型Type<Bit>::print();Type<Intensity>::print();return 0;}
4.(*1.5)写一个程序打印出字母'a'...'z'和数字'0...'9',以及它们的整数值。对所有其他可打印字符做同样的事情,再用16进制形式做同样的事情。
参考解答(我只答应了a..z,0...9)
#include <iostream>using namespace std;int i;char const char_table[]="abcdefghijklmnopqrstuvwxyz0123456789";int main(){//十进制for(i=0;i<sizeof(char_table)-1;++i) //注意,char_table最后一个字符为'\0'。{cout<<char_table[i]<<'\t'<<dec<<int(char_table[i])<<endl;}cout<<"**********************************"<<endl;//十进制为默认进制,下面的这个输出将和上面一样for(i=0;i<sizeof(char_table)-1;++i){cout<<char_table[i]<<'\t'<<int(char_table[i])<<endl;}cout<<"**********************************"<<endl;//十六进制for(i=0;i<sizeof(char_table)-1;++i){cout<<char_table[i]<<'\t'<<hex<<int(char_table[i])<<endl;}return 0;}
5.(*2)在你所用的机器上,下面类型的最大值和最小值是什么:char,short,int,long,float,double.long double 和unsigned
#include <iostream>#include <limits>template <typename T>struct Type{static void print(){std::cout<<typeid(T).name()<<": range is("<<std::numeric_limits<T>::min()<<","<<std::numeric_limits<T>::max()<<")\n";}};int main(){Type<char>::print();Type<short>::print();Type<int>::print();Type<long>::print();Type<float>::print();Type<double>::print();Type<long double>::print();Type<unsigned>::print();return 0;}
6。(*1)什么是可以在你的系统上的C++程序里使用的最长的局部名字?什么是可以在你系统上的C++程序里使用的最长外部名字?对于在你的名字中能够使用的字符有任何限制吗?
参考解答:
C++对一个名字里字符的个数并未强加任何控制。一个名字由字母和下划线构成。不过其首字母必须为字母(下划线也看做字母)。C++的关键字不能做用作用户定义实体的名字。
- 《C++程序设计语言》(特别版)第四章答案
- 《C++程序设计语言(特别版)》
- C++ 程序设计语言(特别版)
- C++程序设计语言(特别版):第二章 C++概览
- C++程序设计语言(特别版):第三章 标准库概念
- 《C程序设计语言》第四章 函数和程序结构
- 第10章 类---《C++程序设计语言(特别版)》
- C++程序设计语言(特别版):第一章 致读者
- 学习《C++程序设计语言(特别版)》 忠告
- 《C程序设计语言》第一章作业答案
- 实现《C++程序设计语言(特别版)》第6章 表达式和语句 - 桌面计算器 - Linux
- 《C++程序设计语言 》特别版 读书笔记
- 初读 《c++程序设计语言特别版》
- 读书笔记:C程序设计语言,第四章:函数与程序结构 (含课后题全解)
- 《C程序设计语言》笔记----第四章 函数与程序结构
- C程序设计语言(K&R)第四章学习笔记
- 第11章 运算符重载---《C++程序设计语言(特别版)》
- C++程序设计语言 特别版 第10章 Date类 完整实现
- 测试猜想(2)---对控件进行模糊查找测试
- 在win7 64位上安装oracle10g
- Android AsyncTask异步操作
- IDE、SCSI、SATA
- 从头开始
- 《C++程序设计语言》(特别版)第四章答案
- Oracle中EXECUTE IMMEDIATE的使用技巧
- ibatis学习总结一
- ajax请求的与页面本身有的数据(页面加载时候存在)的一个区别
- C++ 多线程讲解及示例代码
- LINUX VI 命令详解
- Maximum Path Length Limitation
- 缓存
- Java实践之路——线程