结构体定义是名称怎么设置???
我看到一个结构体如上所示。我想知道我用红色框圈起来的部分有什么作用?貌似这里命名了两次?有什么异同。。。。我是做java的。请详细给我解释下这个做法有什么意义。...
我看到一个结构体如上所示。我想知道我用红色框圈起来的部分有什么作用?貌似这里命名了两次?有什么异同。。。。我是做java的。请详细给我解释下这个做法有什么意义。
展开
2个回答
展开全部
你这贴的应该是C/C++代码,在C语言中,使用struct定义了一个结构体之后,要使用它,也要跟上struct关键字,否则系统不认这个结构体,比如:
struct SDK_SYSTEM_TIME{
...........
.........//省略
};//结构体定义
struct SDK_SYSTEM_TIME now;//定义一个结构体变量now
这样每次使用这个结构体的时候都要加上struct关键字,比较麻烦,所以,我们可以用typedef关键字来给这个结构体定义一个别名,这样以后再使用这个结构体的时候就直接用别名,而不需要加struct关键字了,如:
typdef struct SDK_SYSTEM_TIME{
...........
.........//省略
}SDK_SYSTEM_TIME;//结构体定义的同时,指定别名
SDK_SYSTEM_TIME now;//使用别名定义结构体变量now
这就是这样做的意义,要注意,在C++中,用struct定义结构体之后,可以直接使用结构体名来定义变量,而不需要再加struct关键字。
struct SDK_SYSTEM_TIME{
...........
.........//省略
};//结构体定义
struct SDK_SYSTEM_TIME now;//定义一个结构体变量now
这样每次使用这个结构体的时候都要加上struct关键字,比较麻烦,所以,我们可以用typedef关键字来给这个结构体定义一个别名,这样以后再使用这个结构体的时候就直接用别名,而不需要加struct关键字了,如:
typdef struct SDK_SYSTEM_TIME{
...........
.........//省略
}SDK_SYSTEM_TIME;//结构体定义的同时,指定别名
SDK_SYSTEM_TIME now;//使用别名定义结构体变量now
这就是这样做的意义,要注意,在C++中,用struct定义结构体之后,可以直接使用结构体名来定义变量,而不需要再加struct关键字。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询