我在程序中使用数百万次这样的结构
typedef struct {
unsigned int a, b, c;
} B_STRUCT;
然后我将结构体构建成一个非常大的数组,如下所示:
HUGE_ARRAY_STRUCT[2][191914131].a = 234;
HUGE_ARRAY_STRUCT[2][191914131].b = 232;
大约99.9%的有问题的数据远小于unsigned short int size,但使用unsigned int是安全的。虽然这听起来像是一个微不足道的问题,但有时差异在RAM中 几GB 。
如果整数是>有没有办法可以使用上面的结构?比unsigned short int max和下面的结构如果它们低于unsigned short int max?
typedef struct {
unsigned int a;
unsigned short int b, c;
} SMALLER_STRUCT;
但是,我可以在一种情况下使用一种数据类型构建HUGE_ARRAY_STRUCT,在另一种情况下,在同一结构数组中构建另一种数据类型吗?