[C] stdint.h

内含用typedef表示的各种类型。类型格式如下:

[u]int_[least/fast](8/16/32/64)_t

其中[]中的可填可不填,()中的内容必填。

举个例子:uint_least32_t表示无符号、长度至少32位的整型。

如果只想用可以存储最大数值的类型,请使用(int和max之间没有下划线):

[u]intmax_t

此外,该头文件还包含用宏表示的,上述类型可以存储的最大(小)值。只需要把对应类型全部变为大写,再根据需要把最后的T变为MIN/MAX即可。比如uint_least32_t能储存的最大值为UINT_LEAST32_MAX。

该头文件还有用于转换数字类型的宏:

[U]INT(8/16/32/64/MAX)_C(x)

其中x表示要转换的值(不要跟表示类型的符号)。

比如UINT32_C(45)可能会将45转换成45U。

[C++] 骑士救公主

期末作业,码字码了2个小时,不发上来感觉自己亏了一个亿。以下是实践报告节选。


一些恶魔抓住了公主(P)并将她关在了地下城的右下角。地下城是由 M×N 个房间组成的二维网格。我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。

继续阅读[C++] 骑士救公主