后面跟着_t(下划线-t)的类型代表什么?

后面跟着_t(下划线-t)的类型代表什么?

这似乎是一个简单的问题,但我找不到它的堆栈溢出搜索或谷歌。后面跟着的类型是什么?_t刻薄?比如

int_t anInt;

我在C代码中看到了很多与硬件密切相关的东西-我情不自禁地认为它们是相关的。


长风秋雁
浏览 1286回答 3
3回答

慕侠2389804

正如DouglasMayle所指出的,它基本上表示一个类型名称。因此,建议将变量或函数名结尾为“_t“因为这可能会引起一些混乱。以及size_t,C89标准定义wchar_t,&nbsp;off_t,&nbsp;ptrdiff_t可能还有其他一些我忘了的。C99标准定义了许多额外的类型,例如uintptr_t,&nbsp;intmax_t,&nbsp;int8_t,&nbsp;uint_least16_t,&nbsp;uint_fast32_t等等。这些新类型在<stdint.h>但最常见的情况是你会使用<inttypes.h>其中(对于标准C标头来说不寻常)包括<stdint.h>..它(<inttypes.h>)还定义了用于printf()和scanf().正如马特柯蒂斯(Mattcurtis)所指出的,在后缀中编译器没有任何意义;它是一种面向人的惯例。然而,你也应该注意到POSIX定义了许多额外的类型名称,以‘_t‘,和保留后缀为了实现。这意味着,如果您正在使用与POSIX相关的系统,使用约定定义您自己的类型名称是不明智的。我所工作的系统已经完成了它(20多年了);我们经常会被定义相同名称的类型的系统所绊倒。

慕村9548890

这是一种用于命名数据类型的约定,例如typedef:typedef&nbsp;struct&nbsp;{ &nbsp;&nbsp;char*&nbsp;model; &nbsp;&nbsp;int&nbsp;year;...}&nbsp;car_t;
打开App,查看更多内容
随时随地看视频慕课网APP