首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在C中使用STRUCT时的命名约定

在C中使用STRUCT时的命名约定
EN

Stack Overflow用户
提问于 2011-04-06 05:51:01
回答 2查看 41.1K关注 0票数 26

我正在学习C语言,我发现有人定义了一个结构,它的结构名称前面有_。这是我第一次看到它,有人能告诉我更多关于它的信息吗?为什么有人会使用_aStructName而不是aStructName,好处是什么?

代码语言:javascript
复制
struct _huffmanNode {
    int value;
    uint32_t frequency;

    int hasChild;
    struct _huffmanNode *child[2];

    struct _huffmanNode *next;
};

类似地,我发现有人在以下代码中使用这种命名约定:

代码语言:javascript
复制
typedef struct HuffCode_ {

unsigned char      used;
unsigned short     code;
unsigned char      size;

} HuffCode;
EN

回答 2

Stack Overflow用户

发布于 2011-04-06 05:57:50

很多时候,在纯C语言中,人们喜欢定义他们的结构,这样它们看起来就不会那么难看了。因此,他们将结构本身命名为丑陋的名称,而将typedef命名为干净的名称。通常,我在GNU世界中看到的约定是:

代码语言:javascript
复制
typedef struct mytype_t
{
    int field;
    char field2;
} mytype;
票数 7
EN

Stack Overflow用户

发布于 2011-04-06 05:55:40

我使用第二个示例的变体:

代码语言:javascript
复制
typedef struct huffcode {
... } HuffCode;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5558994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档