请问一个相当菜鸟的问题 关于MFC中LVITEM(LVITEMW)结构体赋值的问题
typedefstructtagLVITEMW{UINTmask;intiItem;intiSubItem;UINTstate;UINTstateMask;LPWSTRp...
typedef struct tagLVITEMW
{
UINT mask;
int iItem;
int iSubItem;
UINT state;
UINT stateMask;
LPWSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
#if (_WIN32_IE >= 0x0300)
int iIndent;
#endif
#if (_WIN32_WINNT >= 0x501)
int iGroupId;
UINT cColumns; // tile view columns
PUINT puColumns;
#endif
} LVITEMW, *LPLVITEMW;
而有个宏定义 #define LVITEM LVITEMW
说明LVITEM 结构体有多达十五个参数
但是书上有个例子 赋值语句是这样的:LVITEM NewItem={0};
这样居然通过了编译和链接 虽然什么都没有显示 我实在不明白是怎么通过编译的 这个结构体似乎没有那个成员有默认的值 应该赋值要赋值给15个变量 怎么“={0}”这样的赋值居然可以通过 展开
{
UINT mask;
int iItem;
int iSubItem;
UINT state;
UINT stateMask;
LPWSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
#if (_WIN32_IE >= 0x0300)
int iIndent;
#endif
#if (_WIN32_WINNT >= 0x501)
int iGroupId;
UINT cColumns; // tile view columns
PUINT puColumns;
#endif
} LVITEMW, *LPLVITEMW;
而有个宏定义 #define LVITEM LVITEMW
说明LVITEM 结构体有多达十五个参数
但是书上有个例子 赋值语句是这样的:LVITEM NewItem={0};
这样居然通过了编译和链接 虽然什么都没有显示 我实在不明白是怎么通过编译的 这个结构体似乎没有那个成员有默认的值 应该赋值要赋值给15个变量 怎么“={0}”这样的赋值居然可以通过 展开
展开全部
这个属于C的基本知识,={0}之后该结构体所有域为0.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给第一个赋值为0,后面的没赋值的默认为0,C的基础知识,15个数都是0
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
表示全部赋0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询