如何在C++中将 BMP 移动到数组中
how to move bmp into array in C++
首先,我是c/c ++的新手,对你来说可能回答我的问题非常简单。
我必须将数据从单色.bmp(扫描的元素的 2D 形状)移动到布尔数组(0 - 白色,1 - 黑色)。我找到了这张图:将 1 位 bmp 文件转换为 C/C++ 中的数组
我必须做同样的事情,但这段代码是 C 的,我需要在C++中完成,所以我必须如何更改它才能在C++中工作?(我正在使用VSexpress 2010)
编辑 1:此 BMP 是 144x320 像素
编辑2:我看到没有 你甚至看代码,指针有问题错误 C2440:"正在初始化":无法从"void *"转换为"无符号字符"1> 从"void"到指向非"void"的指针需要显式强制转换它符合: 无符号字符 *img = malloc(w * h), *data = malloc(fileSize);
我认为 C 代码大部分都可以在 C++ 中工作,无需任何修改,考虑到所使用的函数很常见。您可以将文件操作更改为使用 fstream
,但使用 fopen
和 C 函数也应该有效。
你链接到的 C 代码应该像 C++ 一样工作 - 后者是前者的超集。您当然可以将 C 代码迁移到C++习语(使用 STL 等),但我建议不要这样做。
但请注意,如果所述代码无法编译,可能是因为您的C++编译器要求高标准的尊重,因此(请参阅此处的原因)"#include
相关文章:
- 移动二维数组中的字符
- 新的整数数组向右移动?
- 当 std::move 与 C 样式数组或不移动对象时会发生什么
- 在数组中输入 n 个整数的列表,并以类似于钟摆来回移动的方式排列它们. 输入-1 3 2 5 4,输出5 3 1 2 4
- 数组指针表示法C++(移动数组时)
- C++ - 块不移动,我的数组不起作用
- 如何将数组中的元素向右移动?
- 如何将不可移动和不可复制的函数返回值获取到数组中
- 尝试通过多个函数移动数组,但遇到了我不知道如何修复的错误
- 移动数组C++中的特定元素
- 在 C++ 中移动数组元素
- C++移动数组元素的正确方法aligned_storage
- 移动数组指针未更改开始的地址
- 使用memcpy移动数组并在给定位置插入一个新元素
- 如何移动数组中的元素,将奇数放到数组的开头(从最小到最大),甚至放到后面(从最大到最小)
- 单独移动数组(raw array, std::array, std::vector)的每个元素
- 向下移动数组值1
- c++中移动数组的函数
- 移动数组中字符串的位置
- 移动数组元素