自从我开始使用 C 编程以来,我知道/看到每个人在使用 typedef 声明变量时都使用以下约定,如下所示:
int32_t *data_value;
const int16_t *Order_Of_Mag;
uint16_t min_change;
uint8_t eeprom_save_flag;
我理解部分原因是不同架构之间的可移植性。有谁知道什么时候和/或什么标准规定了这种声明方法?
此外,考虑到 char 既不是 uint8_t 也不是 int8_t(参见下面的示例函数),处理需要使用 char 的标准库 (stdio.h) 函数的推荐方法是什么
sscanf(const char *format)
int atio(const char *s)
提前致谢
最佳答案
据我所知,唯一要求您使用此类 typedef 的标准是项目/公司特定的编码约定。然后,这些编码约定还准确指定要使用的 typedef(甚至宏),因此它可能是 UINT32
而不是您必须使用的 uint32_t
关于char
、uint8_t
或int8_t
的选择,默认应该是使用char
字符数据(即字符串和字符)和用于小数字的 uint8_t
或 int8_t
。
关于c++ - C 中的变量声明 typedefs 约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13865451/