c++编写程序 输入一个字符串并存储在外存中
时间: 2024-09-14 16:09:17 浏览: 39
C++实现从输入中读取字符串
在C++中,将一个字符串存储在外部存储器中通常涉及到文件的读写操作。这里提供一个简单的例子来说明如何将输入的字符串写入到一个文件中:
```cpp
#include <iostream>
#include <fstream>
#include <string>
int main() {
// 创建一个string对象来存储输入的字符串
std::string inputString;
// 输出提示信息并获取用户输入
std::cout << "请输入一个字符串: ";
std::getline(std::cin, inputString); // 使用getline函数获取一行输入
// 打开文件,准备写入数据
std::ofstream outFile("output.txt", std::ios::out); // 使用ofstream创建并打开文件
if (!outFile) {
std::cerr << "无法打开文件!" << std::endl;
return 1;
}
// 将字符串写入文件
outFile << inputString;
// 关闭文件
outFile.close();
std::cout << "字符串已存储在 'output.txt' 文件中." << std::endl;
return 0;
}
```
这个程序首先包含了必要的头文件,然后在`main`函数中实现了以下步骤:
1. 创建一个`std::string`对象来存储用户输入的字符串。
2. 通过标准输入获取用户输入的字符串。
3. 创建一个`std::ofstream`对象来打开(或创建)一个文件,准备写入数据。
4. 检查文件是否成功打开。
5. 将字符串写入文件。
6. 关闭文件流。
要从外存中读取字符串,可以使用`std::ifstream`类来实现。下面是读取刚才存储在文件中的字符串的一个例子:
```cpp
#include <iostream>
#include <fstream>
#include <string>
int main() {
std::string readString;
std::ifstream inFile("output.txt", std::ios::in); // 使用ifstream打开文件进行读取
if (!inFile) {
std::cerr << "无法打开文件!" << std::endl;
return 1;
}
// 从文件中读取字符串
if (std::getline(inFile, readString)) {
std::cout << "从文件 'output.txt' 中读取的字符串是: " << readString << std::endl;
} else {
std::cerr << "文件内容为空或读取失败!" << std::endl;
}
inFile.close();
return 0;
}
```
在这个例子中,我们使用`std::ifstream`来读取之前写入到"output.txt"文件中的字符串。程序打开文件,使用`std::getline`函数读取字符串,并输出到控制台。
阅读全文