c中结构的定义

时间:2013-01-09 01:41:44

标签: c networking network-programming

我在“UNIX网络编程”一书中对这个结构的定义提出了一个问题(v2,pg162) 这是:

struct {
    pthread_mutex_t mutex
    int buff[MAXNITEMS];
    int nput;
    int nval;
} shared= { 
    PTHREAD_MUTEX_INTIALIZER
};

分享后我无法理解代码。它到底意味着什么? 提前致谢

2 个答案:

答案 0 :(得分:7)

代码struct { ... } shared = { PTHREAD_MUTEX_INITIALIZER }定义结构类型上述结构类型类型的变量shared。部分= { PTHREAD_MUTEX_INITIALIZER }然后初始化此变量,其第一个组件为PTHREAD_MUTEX_INITIALIZER,其余部分为零。

答案 1 :(得分:2)

这是一个宏,更多信息在这里:

PTHREAD_MUTEX_INITIALIZER Macro

它用于将属性初始化为默认值。