我希望能够在std::vector及其底层C数组int*之间进行转换,而无需显式复制数据。std::vector是否提供对底层C数组的访问?我正在寻找这样的东西vectorv(4,100)int*pv=v.c_array();编辑:另外,是否可以反过来,即如何在不复制的情况下从C数组初始化std::vector?intpv[4]={4,4,4,4};vectorv(pv); 最佳答案 你可以获得指向第一个元素的指针,如下所示:int*pv=&v[0];这个指针只有在vector没有被重新分配时才有效。如果您插入的元素多于vector