使用C++写一个输入为字符串转为16进制数的程序
时间: 2023-06-19 18:09:19 浏览: 93
下面是一个简单的 C++ 程序,可以把一个字符串转换为 16 进制数:
```c++
#include <iostream>
#include <string>
#include <sstream>
#include <iomanip>
int main() {
std::string input;
std::cout << "Enter a string: ";
std::getline(std::cin, input);
std::stringstream ss;
for (char c : input) {
ss << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(c);
}
std::cout << "Hexadecimal representation: " << ss.str() << std::endl;
return 0;
}
```
程序首先从用户输入中读取一个字符串,然后使用 `std::stringstream` 将每个字符转换为其对应的 16 进制数。使用 `std::setw(2)` 和 `std::setfill('0')` 来确保每个 16 进制数都是两位数,并使用 `std::hex` 来指示输出为 16 进制。
实际运行时,程序应该输出类似以下的内容:
```
Enter a string: Hello, world!
Hexadecimal representation: 48656c6c6f2c20776f726c6421
```
阅读全文