繁体   English   中英

C ++转换std :: vector <char*> 字符**

[英]C++ cast std::vector<char*> to char**

如何在C ++中将std :: vector 转换或转换为char **?

我使用std :: vector的原因是我需要在循环中将一些字符串push_back回退,但是随后我必须调用一个需要char **的C函数。

std::vector::data将产生char** ,尽管如果在矢量上发生重新分配,则此指针可能会失效。

同样, &vec[0]是用于生成可变指针的另一种技术,但是在使用这种方法时需要小心。

为此,请使用数据方法: http : //en.cppreference.com/w/cpp/container/vector/data
这将返回指向矢量数据的指针

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM