如果我有一个整数变量我可以使用sscanf
如下所示,使用格式说明符 %d。
sscanf (line, "Value of integer: %d\n", &my_integer);
在哪里可以找到格式说明符uint8_t
, uint16_t
, uint32_t
and uint64_t
?
uint64_t 可能有 %lu。
它们被声明在<inttypes.h>
作为宏:SCNd8、SCNd16、SCNd32 和 SCNd64。
示例(对于 int32_t):
sscanf (line, "Value of integer: %" SCNd32 "\n", &my_integer);
它们的格式是 PRI(对于 printf)/SCN(对于 scan),然后 o、u、x、X d、i 表示相应的说明符,然后什么都没有,LEAST、FAST、MAX 然后是大小(显然 MAX 没有大小)。其他一些示例:PRIo8、PRIuMAX、SCNoFAST16。
编辑:顺便说一句相关问题 https://stackoverflow.com/questions/1183679问为什么采用这种方法。您可能会发现答案很有趣。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)