将C++中的数组转换为字符串
Convert Array in C++ to String
我知道在Java中,可以使用Arrays.toString((返回数组的String表示。在C++中有没有一种方法可以提供类似的功能?
如果你指的是一个字符数组,你可以使用后面的东西
std::vector arr {'a', 'b', 'c'};//the array
std::string str{arr.cbegin(), arr.cend()};//the generated string
工作示例
#include <vector>
#include <algorithm>
#include <string>
#include <iostream>
int main(){
std::vector arr {'a', 'b', 'c'};
std::string str{arr.cbegin(), arr.cend()};
std::cout << str;
}
实时
C++不是Java。我建议你读一本好的C++编程书,看看一些C++参考网站。注意C++的各种方言(例如,C++11与C++17不同(。
请记住,C++数组是同构的:所有数组组件都具有相同的类型。与Java相反,C++没有像JavaObject
类那样的根类型。但是C++有一些有趣的标准容器。注意五条规则。并且您可以将程序设计为具有您的中心class MyRootClass
,其他所有class
都从该中心继承。
但是,您可以很容易地编写一些短代码来将数组转换为字符串。
话虽如此,您可以找到有趣的开源C++库,如POCO或Qt,以简化您的工作。
您还可以(轻松地(编写C++元程序,生成用于声明数组的C++代码,并发送代码以打印或输出它们,您可以为此使用或改进SWIG工具。
还请阅读C++编译器(例如GCC或Clang(、链接器(例如GNU binutils(和构建自动化(例如GNUmake或ninja(的文档。如果您的C++编译器是GCC,那么编译时要使用所有警告和调试信息,所以g++ -Wall -Wextra -g
(并学习使用GDB调试器(。如果您的C++代码库很大(例如数十万行C++(,请考虑编写GCC插件,自动生成一些C++代码用于序列化或打印例程。
将C++中的数组转换为字符串
一种可能是使用半标准化的文本表示,如JSON或YAML(可能使用sqlite或PostGreSQL等数据库(。两者都有C++中的开源库,这可能会有所帮助。
另请参阅s11序列化库。
- wcstombs_s(),转换字符串的长度
- 使用 CStringW/CStringA 和 CT2W/CT2A 转换字符串有什么区别?
- 无法转换字符串插入函数的参数
- 转换字符串向量:基于先前的值跳过元素
- 从中间器转换字符串不起作用,出了什么问题?
- 失败的证明转换字符串到枚举类
- 如何使用正则表达式和提升转换迭代器标记和转换 c 字符串
- 使用java jni时转换字符串类型
- 如何避免在转换字符串令牌流时重复istringstream构造
- 阿托伊未正确转换字符串
- C++,转换字符串,使连续下划线序列变为单个下划线
- 使用长算术转换字符串
- 转换字符串十进制数时的精度
- 将词法转换字符串提升为双精度
- 使用marshal_as函数转换字符串的性能
- C++不会从数据转换字符串
- 无论如何,在c++ /Qt中转换字符串到结构中的字段
- C++ 隐式类型转换字符串 -> int?
- 转换字符串到浮点数,c++实现
- 用于转换字符串大小写的函数