首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请帮小弟我看懂这句关于结构的代码

2012-06-06 
请帮我看懂这句关于结构的代码:typedef struct _tagBMSTR{TCHARszCompStr[COMPSTRSIZE] //编码串LPTSTRlp

请帮我看懂这句关于结构的代码:
typedef struct _tagBMSTR{
TCHARszCompStr[COMPSTRSIZE]; //编码串
LPTSTRlpszResultStr;//结果串
DWORDdwEditPos;//编码串的编辑位置
}BMSTR, NEAR *PBMSTR, FAR *LPBMSTR;
static BMSTR g_BMStr = {0};//???看不懂

最后一句,似乎是定义一个结构变量g_BMStr,并且把所有成员初始化为0。有两点看不懂:
第1点:如果真是这样,那么就应该用结构名_tagBMSTR而不是结构变量名BMSTR。
第2点:是初始化吗?可以这样初始化吗?

[解决办法]
第1点:如果真是这样,那么就应该用结构名_tagBMSTR而不是结构变量名BMSTR。
你知道typedef的用法么,不知道先查一下就知道为啥了

第2点:是初始化吗?可以这样初始化吗?
毫无疑问,这样可以


[解决办法]
楼主不知道BMSTR是_tagBMSTR的别名么,两个是一样的意思啊。
可以这么初始化的。
[解决办法]
1.早期的C标准中。
结构体struct A
那么类型就是 struct A
为了方便
往往使用typedef struct A B;
B和struct A是等效的。
2.C里面允许这样初始化。
[解决办法]

探讨

google "typedef"

可以如此初始化,结构看编译器

[解决办法]
探讨

楼主不知道BMSTR是_tagBMSTR的别名么,两个是一样的意思啊。
可以这么初始化的。

热点排行