我想以一种奇怪的方式使用fread或类似的东西。我不确定这是否可能......让我解释一下这个案例:
我有一个名为“ dummy ”的二进制文件。该文件中包含 unsigned char 数组。但是,我想将它们放入一个浮点数组中,该数组将存储 4 倍的内存空间。
我可以实现如下目标:
FILE* in_file;
int numberOfCharacters = 1000; // number of unsigned characters to read ...
in_file = fopen("dummy", "rb");
float* floatArray = (float*) malloc( numberOfCharacters * sizeof(float) );
for(int i=0;i<numberOfCharacters;i++)
{
unsigned char temp;
fread(&temp, sizeof(unsigned char), 1, in_file);
floatArray[i] = temp;
}
我知道(实际上并没有真正尝试过)这种方式可能会奏效。但我很好奇是否有更好(更快)的方法呢?也许,没有循环..?
提前致谢,
坐下。