编写一个程序,使用cin从标准输入输入3段文字,保存到一段动态分配的内存中,每一段文字输入后,必须要及时保存到动态内存中。

简介: 编写一个程序,使用cin从标准输入输入3段文字,保存到一段动态分配的内存中,每一段文字输入后,必须要及时保存到动态内存中。
#include <iostream>
#include <Windows.h>
#include <string>
using namespace std;
int main(void)
{
  string str1;
  string str2;
  string str3;
  cout<<"请输入一段文字:";
  cin>>str1;
  char *p1=new char[str1.length()]; //动态分配
  for(int i=0;i<str1.length();i++)
  {
    *(p1+i)=str1[i];
  }
  cout<<"请输入一段文字:";
  cin>>str2;
  char *p2=new char[str2.length()]; //动态分配
  for(int i=0;i<str2.length();i++)
  {
    *(p2+i)=str2[i];
  }
  cout<<"请输入一段文字:";
  cin>>str3;
  char *p3=new char[str3.length()]; //动态分配
  for(int i=0;i<str3.length();i++)
  {
    *(p3+i)=str3[i];
  }
  for(int i=0;i<str1.length();i++)
  {
    cout<<*(p1+i);
  }
  cout<<endl;
  for(int i=0;i<str2.length();i++)
  {
    cout<<*(p2+i);
  }
  cout<<endl;
  for(int i=0;i<str3.length();i++)
  {
    cout<<endl<<*(p3+i);
  }
  delete[] p1;    //释放动态分配的内存
  delete[] p2;
  delete[] p3;
  system("pause");
  return 0;
}
相关文章
|
3月前
|
安全 Linux Shell
Linux上执行内存中的脚本和程序
【9月更文挑战第3天】在 Linux 系统中,可以通过多种方式执行内存中的脚本和程序:一是使用 `eval` 命令直接执行内存中的脚本内容;二是利用管道将脚本内容传递给 `bash` 解释器执行;三是将编译好的程序复制到 `/dev/shm` 并执行。这些方法虽便捷,但也需谨慎操作以避免安全风险。
191 6
|
2月前
|
NoSQL 测试技术
内存程序崩溃
【10月更文挑战第13天】
140 62
|
10天前
|
存储 C语言
C语言如何使用结构体和指针来操作动态分配的内存
在C语言中,通过定义结构体并使用指向该结构体的指针,可以对动态分配的内存进行操作。首先利用 `malloc` 或 `calloc` 分配内存,然后通过指针访问和修改结构体成员,最后用 `free` 释放内存,实现资源的有效管理。
55 12
|
2月前
|
缓存 算法 Java
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
这篇文章详细介绍了Java虚拟机(JVM)中的垃圾回收机制,包括垃圾的定义、垃圾回收算法、堆内存的逻辑分区、对象的内存分配和回收过程,以及不同垃圾回收器的工作原理和参数设置。
70 4
JVM知识体系学习六:JVM垃圾是什么、GC常用垃圾清除算法、堆内存逻辑分区、栈上分配、对象何时进入老年代、有关老年代新生代的两个问题、常见的垃圾回收器、CMS
|
22天前
|
存储 缓存 Java
结构体和类在内存管理方面的差异对程序性能有何影响?
【10月更文挑战第30天】结构体和类在内存管理方面的差异对程序性能有着重要的影响。在实际编程中,需要根据具体的应用场景和性能要求,合理地选择使用结构体或类,以优化程序的性能和内存使用效率。
|
2月前
|
存储 程序员 编译器
简述 C、C++程序编译的内存分配情况
在C和C++程序编译过程中,内存被划分为几个区域进行分配:代码区存储常量和执行指令;全局/静态变量区存放全局变量及静态变量;栈区管理函数参数、局部变量等;堆区则用于动态分配内存,由程序员控制释放,共同支撑着程序运行时的数据存储与处理需求。
116 21
|
3月前
|
C语言 Android开发 C++
基于MTuner软件进行qt的mingw编译程序的内存泄漏检测
本文介绍了使用MTuner软件进行Qt MinGW编译程序的内存泄漏检测的方法,提供了MTuner的下载链接和测试代码示例,并通过将Debug程序拖入MTuner来定位内存泄漏问题。
基于MTuner软件进行qt的mingw编译程序的内存泄漏检测
|
2月前
|
存储 Java
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
这篇文章详细地介绍了Java对象的创建过程、内存布局、对象头的MarkWord、对象的定位方式以及对象的分配策略,并深入探讨了happens-before原则以确保多线程环境下的正确同步。
57 0
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
|
3月前
|
存储 运维
.NET开发必备技巧:使用Visual Studio分析.NET Dump,快速查找程序内存泄漏问题!
.NET开发必备技巧:使用Visual Studio分析.NET Dump,快速查找程序内存泄漏问题!
|
4月前
|
监控 Java API
如何从 Java 程序中查找内存使用情况
【8月更文挑战第22天】
217 0