在百度知道里面得到了正确的答案

http://zhidao.baidu.com/question/198940026560129285.html?quesup2&oldq=1

#include<iostream>
#include <string>//出问题时,使用的是cstring,但换成string一样出问题
using namespace std;
struct stringy{char *str;int ct;
};
void set(stringy &beany,const char t[]);
void show(const stringy &beany,int count=0);
void show(const char t[],int count=0);
void main84()
{stringy beany;char testing[]="Reality isn't what it used to be.";//char testing[]="Reality";//what it used to be.";set(beany,testing);show(beany);show(beany,2);testing[0]='D';testing[1]='u';show(testing);show(testing,3);show("Done!");cout<<beany.str<<endl;cout<<"here is in"<<endl;if(beany.str!=NULL)    //总会引起中断,说是堆损坏{delete []beany.str;cout<<"no null"<<endl;}else cout<<"str is null";system("pause");}void set(stringy &beany,const char t[])
{//delete beany.str;int size=strlen(t);//在这里,t已经退化成了一个指针,不能用sizeof获取长度!!!int size=sizeof(t);//这里出了问题,长度测试错误,当长度超过八个字符是,直接出错!cout<<"size="<<size<<endl;beany.str=new char[size+1];strcpy(beany.str,t);int sizeofStr=strlen(beany.str);cout<<"Sizeofstr="<<sizeofStr<<endl;beany.ct=size;}void show(const stringy &beany,int count)
{cout<<"Stringy show"<<endl;if(count!=0){for(int j=0;j<count;j++){//cout<<"in stringy here!"<<j<<endl;//cout<<"Stringy show"<<j<<endl;cout<<"str="<<beany.str<<endl;};}elsecout<<"str="<<beany.str<<endl;}
void show(const char t[],int count)
{cout<<"Testing show:"<<endl;if(count==0)cout<<"str="<<t<<endl;elsefor(int i=0;i<count;i++){cout<<"Testing show:"<<i<<endl;cout<<"str="<<t<<endl;}}

转载于:https://www.cnblogs.com/qq84435/p/3664871.html

C++primer plus第六版课后编程题答案8.3(正解)相关推荐

  1. C++primer plus第六版课后编程题答案8.6

    8.6 #include <iostream> #include <string> using namespace std;template <typename AnyT ...

  2. C Primer Plus第六版(中文版)编程练习答案(完美修订版)汇总

    //本文是博主编写的C Primer Plus第六版(中文版)编程练习答案的所有链接; //使用超链接汇总于此,若是有用请点赞收藏并分享给他人; C Primer Plus 第六版(中文版)第二章(完 ...

  3. Web前端开发精品课HTML CSS JavaScript基础教程第六章课后编程题答案

    编程题: 利用这样一章学到的知识,制作如图6-10所示的表格效果,并且要求代码语义化. 用VS2013新建ASP.NET空网站,添加新项,建立HTML文件,向其加入以下代码: <!DOCTYPE ...

  4. C++PRIMER PLUS第六版课后编程答案 4.6-4.10

    4.6 #include <iostream> #include <string> using namespace std; struct CandyBar {string n ...

  5. C prime plus 第六版 课后编程练习 第7章

    C prime plus 第六版 课后编程练习 第7章 7.12.1 编写一个程序读取输入,读到#字符停止,然后报告读取的空格数.换行符数和所有其他字符的数量. 7.12.2.编写一个程序读取输入,读 ...

  6. C++程序设计 (自考课程代码4737)课后编程题答案

    C++程序设计 (2008版 主编刘振安) 课后编程练习题 自考课程代码4737 所有章节课后编程练习答案(本人手打,仅供参考,如有不足请见谅) 目录(源码在github上,点开超链接就能看到): 第 ...

  7. Web前端开发精品课HTML CSS JavaScript基础教程第五章课后编程题答案

    编程题: 图5-15所示为一个问卷调查的网页,请制作出来.要求:大标题用h1标签:小题目用h3标签:前两个问题使用有序列表:最后一个问题使用无序列表. 用VS2013新建ASP.NET空网站,添加新项 ...

  8. C prime plus 第六版 课后编程练习 第4章

    本人编程小白,正在奋力自学C语言.内容如有错误,欢迎交流. 电子版C primer plus 第6版 中文文字版下载地址 下载地址 以下为课后练习. 使用编译器 vs 2013 . 如使用其他编译器, ...

  9. c 语言一个参数是他所有结果的总和,C Primer Plus 第六章 复习题编程练习 答案...

    第六章 复习题&编程练习 复习题 1. 写出执行完下列各行后quack的值是多少.后5行中使用的是前一行生成的quack的值. 2. 假设value是int类型,下面循环的输出是什么?如果va ...

最新文章

  1. html 提交表单,图片和文字一起提交,图片存入服务器,图片地址和表单信息存入数据库,带后端php代码
  2. vs2010无法调试JS
  3. 始于《将才》,而不止于将才
  4. 【Android 应用开发】 Android 相关代码规范 更新中 ...
  5. 虚拟桌面最佳组合---Windows 7
  6. [转]MVC实用架构设计(三)——EF-Code First(3):使用T4模板生成相似代码
  7. CSS样式中” 大于号”
  8. 设计模式--中介者(Mediator)模式
  9. 长连接和Keepalive详解
  10. Linux桌面需要强制访问控制,RHCSA 系列(十三): 在 RHEL 7 中使用 SELinux 进行强制访问控制...
  11. 如何删除office2007、以及安装新版本office
  12. clock_gettime系统调用详解
  13. docker常用到的一些命令
  14. vue.js 首屏优化
  15. matlab的基本语法规则_MATLAB基础语法
  16. 诺基亚n1系统更新显示无网络_曾经世界第一大手机系统,诺基亚塞班系统竟还活着!你用过吗?...
  17. 用计算机在作文格中打单字字,二年级信息技术第3—12课教案
  18. 素数问题与质因子分解
  19. 如何查看电脑的操作系统以及更改计算机名称
  20. Xgboost近似分位数算法

热门文章

  1. 铃木uy125摩托车机油_UY125 新瑞梦UM125发布 济南铃木于湖南株洲吹响国IV集结号...
  2. 搬运机器人举杯贺所需的条件_智能搬运机器人比赛规则
  3. ubantu下安装Nginx
  4. C语言代码规范(五)函数参数个数
  5. bst 删除节点_C ++程序查找具有N个节点的BST数量(加泰罗尼亚编号)
  6. 第十三章 数据库支持
  7. 二、织物具备超级防水效果的条件?
  8. linux与windows编码转化
  9. redis源码学习笔记目录
  10. Redis源码分析(二)redis-cli.c