我可以更改整数的内存吗? 例如:
Query oldItems = mFirebaseDatabaseReference.orderByChild("dateCreatedGu/date").endAt(cutoff);
是否可以将2个字节更改为40个字节,例如?
我正在使用C语言。
答案 0 :(得分:1)
使用
时,无法更改编译器为对象分配的字节数int x;
如果要分配一定数量的字节,如果在编译时已知大小,则使用数组。
char array[100];
如果只在运行时知道大小,请使用动态分配的内存。
char* array = malloc(array_size);
答案 1 :(得分:0)
您的计算机为每种数据类型分配的字节数(包括' int')取决于您的计算机和操作系统。如果要准确指定它应该有多长字节,请尝试使用stdint.h库中的数据类型,例如uint8_t或uint16_t,而不是' int。'
答案 2 :(得分:0)
最大或多或少的标准整数表示为long long
,通常为64位。如果您绝对需要64位,则应#include <stdint.h>
然后使用int64_t
(或uint64_t
表示无符号整数)。这将使你的数字大到9223372036854775807(签名)或18446744073709551615(未签名)。
即使这不足以满足您的需求,您也需要multi-precision arithmetic library。