如何在C ++中将或转换 std :: vector转换为char **?
我正在使用std :: vector,因为我需要在循环中push_back一些字符串,但是我必须调用一个需要char **的C函数。
答案 0 :(得分:4)
std::vector::data
将生成char**
,但如果向量上发生重新分配,此指针可能会失效。
另外,&vec[0]
是另一种产生可变指针的技术,但你需要小心这种方法。
答案 1 :(得分:1)
使用数据方法:
http://en.cppreference.com/w/cpp/container/vector/data
这将返回指向矢量数据的指针