如何解决_t下划线-t后跟的类型代表什么?
正如 Douglas Mayle 所指出的,它基本上表示一个类型名称。因此,不建议您使用 ‘ _t
‘
结束变量或函数名称,因为这可能会引起一些混乱。此外size_t
,C89
标准还定义了wchar_t
、off_t
、ptrdiff_t
,可能还有一些我已经忘记的其他内容。C99
标准定义了很多额外的类型,例如uintptr_t
, intmax_t
, int8_t
, uint_least16_t
,uint_fast32_t
,
等等。这些新类型是正式定义的,<stdint.h>
但大多数情况下您会使用<inttypes.h>
which(通常用于标准 C
头文件)包括<stdint.h>
. 它 ( <inttypes.h>
) 还定义了与printf()
and一起使用的宏scanf()
。
正如 Matt Curtis 所指出的,后缀中的编译器没有意义;这是一个以人为本的公约。
但是,您还应该注意,POSIX定义了许多以 ‘ ‘
结尾的额外类型名称_t
,并为实现 。这意味着,如果您正在使用与 POSIX
相关的系统,那么使用约定定义您自己的类型名称是不明智的。我工作的系统已经做到了(超过 20 年);我们经常被定义与我们定义的名称相同的类型的系统绊倒。
解决方法
这似乎是一个简单的问题,但我无法通过 Stack Overflow 搜索或 Google 找到它。一个类型后跟一个_t
意思是什么?如
int_t anInt;
我在 C 代码中看到了很多旨在密切处理硬件的情况——不禁认为它们是相关的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。