从文件中读取字节数组的数据
Reading data for a byte array from a file
我正在研究一个函数,现在有3个参数。其中一个参数是以字节为单位的输入数组的长度。它是一个int型,所以如果length = 4,那么它说输入数组的长度是4字节(输入和输出数组是另外两个参数)。如果length不是4的倍数,我们需要用0填充它,直到它是4的倍数。我的TA告诉我,我应该从文件中读取长度,并将其存储在字节数组中,然后告诉我,我应该用0x00填充它,直到它是4的倍数。这就引出了我的问题:
1)如何声明字节数组?
2)用零填充它就像包含[…]一样简单吗?, 0x00, 0x00, 0x00]作为数组中的元素?
如何声明字节数组?
uint8_t数组(大小),
填充数组
for (unsigned int i = 0; i < padding_size; ++i)
{
array[i] = 0;
}
另一种技术是将数组设置为pad值,然后用值替换必要的槽:
std::fill(&array[0], &array[size], 0);
array[3] = value;
如果性能受限,您可能希望展开循环并执行多个赋值:
array[0] = 0;
array[1] = 0x0; // Same as 0.
array[2] = 0;
array[3] = value;
大多数计算机更喜欢处理数据指令。跳转或分支往往会激怒他们,因为他们需要花时间评估分支或跳转。
相关文章:
- C++:__aligned(__alignof__) 导致字符数组数据出现问题?
- 很好的语法来获取对向量/数组数据的大小引用?
- 数组数据以错误的方式遍历 Python/Matlab
- 访问 Arduino 中的结构数组数据
- 在能够从 Web 浏览器访问大型数组数据的同时存储它的最可行方法是什么?
- 在C 类中声明数组数据
- 如何在 c++ 中将字符串数组数据写入输出文件
- 使用 stl::map 和 stl::unordered_map 对包含大量重复元素的数组数据进行排序
- 检索字符数组数据时出现问题
- 共享库的C 访问数组数据
- 将包含数组数据成员的结构保存到文件
- C++中的LinkedList字符数组数据
- 正在尝试使用if语句检查数组数据
- 在单独的数据中显示数组数据
- 如何在 c++ 中将字节类型的字符数组数据保存到文件中
- 从数组数据中缺少第一个元素的 DLL 返回C++结构
- 如何在C++中表示二进制字节数组数据
- 实现动态数组数据结构时出现"double free or corruption"错误
- 多维数组数据成员的运行时错误
- C++ :使用 * 显示数组数据的条形图