我按照以下方式编写了代码:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
#define SIZE 1000
FILE *fp = NULL;
int i = 0;
size_t bytes = 0;
if ((fp = fopen("raw_data.ht3", "rb")) == NULL) {
printf ("could not open file\n");
return 0;
}
fclose(fp);
return 0;
}
这只是给每个读取数据的单个整数。我需要以矩阵形式呈现这些数据。矩阵将以500乘349的形式出现。我怎样才能呈现这样的数据?根据这些数据,我稍后会制作矩阵图。谢谢!我们将非常感谢您的帮助。
答案 0 :(得分:1)
而不是您目前拥有的联盟,请执行以下操作:
typedef union
{
uint8_t u8 [2];
uint16_t u16;
} meaningful_name_here;
然后你可以做
meaningful_name_here stuff [1000];
或
meaningful_name_here stuff [500][349];
另请注意,不应在堆栈上分配像这样的大型数组。将它们分配为static
或使用动态分配。