相关文章推荐
高大的板栗  ·  为什么go语言的hello ...·  2 月前    · 
逆袭的烈马  ·  PHP读取Excel 之 ...·  1 年前    · 
体贴的拐杖  ·  ubuntu - /etc/udev ...·  2 年前    · 
从容的柿子  ·  How to install ...·  2 年前    · 

c++ vector unsigned char to unsigned char*

要将C++中的vector转换为unsigned char*,可以使用vector类中的data()函数,它返回指向vector存储区域的指针,然后可以将其转换为unsigned char*类型。

以下是示例代码:

#include <vector>
int main() {
  std::vector<unsigned char> vec { 0x00, 0x01, 0x02, 0x03 };
  // 将vector<unsigned char>转换为unsigned char*
  unsigned char* data_ptr = vec.data();
  // 对转换后的unsigned char*指针进行操作
  for (int i = 0; i < vec.size(); ++i) {
    data_ptr[i] = 0xff;
  return 0;

在上面的示例代码中,我们首先定义了一个vector类型的变量vec,并初始化为{ 0x00, 0x01, 0x02, 0x03 }。然后使用data()函数将vec转换为unsigned char*类型的指针data_ptr,接着我们对转换后的指针进行了操作。

需要注意的是,在操作完指针之后,不需要手动释放指针,因为vector类会自动管理它的存储区域,当vector对象生命周期结束时,它的存储区域也会被释放。

  •