欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > 【C++ Primer Plus习题】9.3

【C++ Primer Plus习题】9.3

2024/10/24 19:20:41 来源:https://blog.csdn.net/qq_74047911/article/details/141829169  浏览:    关键词:【C++ Primer Plus习题】9.3

问题:

这里是引用
在这里插入图片描述

解答:

#include <iostream>
using namespace std;struct chaff
{char dross[20];int slag;
};int set_chaff(chaff& f, char* c, int n)
{if (strlen(c) > 0){strcpy_s(f.dross, c);f.slag = n;return 1;}return 0;}void show_cahff(const chaff& f)
{cout << "dross: " << f.dross << endl;cout << "slag: " << f.slag << endl;
}int main()
{char buffer[1024];//缓冲区char st[20];int slag, n = 0;chaff* pcf = new (buffer)chaff[2];//在缓冲区中构造cout << "请输入dross: ";cin.getline(st, 20);cout << "请输入slag: ";cin >> slag;while (strlen(st)>0){cin.get();set_chaff(pcf[n++], st, slag);if (n >= 2)break;cout << "请输入dross: ";cin.getline(st, 20);cout << "请输入slag: ";cin >> slag;}for (int i = 0; i < 2; i++){show_cahff(pcf[i]);}return 0;
}

运行结果:
在这里插入图片描述

考查点:

  • 缓冲区

注意:

  • 静态缓冲区分配好,就不需要delete了
    在这里插入图片描述
  • 动态缓冲区(内存),就需要使用delete
    在这里插入图片描述
  • 缓冲区的使用
    在这里插入图片描述
  • 区别
    在这里插入图片描述

在这里插入图片描述

2024年9月2日20:20:52

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com