Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UNIX C函数中的命名约定(\u t和\u st)_C_Unix - Fatal编程技术网

UNIX C函数中的命名约定(\u t和\u st)

UNIX C函数中的命名约定(\u t和\u st),c,unix,C,Unix,我注意到有一些函数返回类型名为*****u t或*****u st。“\u st”和“\u t”是什么意思?POSIX为类型保留以\u t结尾的名称。虽然很常见的情况是,代码以\u t结尾发明了自己的类型名称,但这样做是危险的——您可能会遇到定义了相同名称的(不同)类型的POSIX系统 在libmemcached源代码中,似乎使用了\u st后缀来表示结构类型: types.h:typedef struct memcached_st memcached_st; types.h:typedef

我注意到有一些函数返回类型名为
*****u t
*****u st
。“\u st”和“\u t”是什么意思?

POSIX为类型保留以
\u t
结尾的名称。虽然很常见的情况是,代码以
\u t
结尾发明了自己的类型名称,但这样做是危险的——您可能会遇到定义了相同名称的(不同)类型的POSIX系统


在libmemcached源代码中,似乎使用了
\u st
后缀来表示结构类型:

types.h:typedef struct memcached_st memcached_st;
types.h:typedef struct memcached_stat_st memcached_stat_st;
types.h:typedef struct memcached_analysis_st memcached_analysis_st;
types.h:typedef struct memcached_result_st memcached_result_st;
types.h:// All of the flavors of memcache_server_st
types.h:typedef struct memcached_server_st memcached_server_st;
types.h:typedef const struct memcached_server_st *memcached_server_instance_st;
types.h:typedef struct memcached_server_st *memcached_server_list_st;

我没有找到一个函数结尾的实例(但我可能没有仔细查找)。

您在考虑哪些函数?类型通常以
\u t
结尾。很好。在libmemcached源代码中,有许多函数返回类型以“\u t”或“\u st”结尾。例如,静态memcached_server_st*_server_create(memcached_server_st*self,const memcached_st*memc)。谢谢你,乔纳森·莱弗勒,我想我已经很清楚了