改变整数的记忆?

时间:2016-12-12 18:40:33

标签: c integer

我可以更改整数的内存吗? 例如:

Query oldItems = mFirebaseDatabaseReference.orderByChild("dateCreatedGu/date").endAt(cutoff);

是否可以将2个字节更改为40个字节,例如?
我正在使用C语言。

3 个答案:

答案 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