我有一个变量:
unsigned int* data = (unsigned int*)malloc(height * width)
Run Code Online (Sandbox Code Playgroud)
我想为所有数组值设置相同的int.我不能使用memset,因为它适用于字节.
我怎样才能做到这一点?
Kon*_*lph 15
使用C++:
std::vector<unsigned int> data(height * width, value);
Run Code Online (Sandbox Code Playgroud)
如果需要将数据传递给需要指针的某些遗留C函数,则可以使用&data[0]或&data.front()以明确定义的方式获取指向连续数据的指针.
如果你绝对坚持使用指针(但你没有技术理由这样做,我不会在代码审查中接受它!),你可以std::fill用来填充范围:
unsigned int* data = new int[height * width];
std::fill(data, data + height * width, value);
Run Code Online (Sandbox Code Playgroud)