struct结构有这样用的吗?

BLUE__OCEAN 2008-10-24 11:20:10
struct
{
int iIndex ;
TCHAR * szLabel ;
TCHAR * szDesc ;
}
devcaps [] =
{
HORZSIZE, TEXT ("HORZSIZE"),TEXT ("Width in millimeters:"),
VERTSIZE, TEXT ("VERTSIZE"),TEXT ("Height in millimeters:"),
HORZRES, TEXT ("HORZRES"), TEXT ("Width in pixels:"),
VERTRES, TEXT ("VERTRES"), TEXT ("Height in raster lines:"),
BITSPIXEL, TEXT ("BITSPIXEL"),TEXT ("Color bits per pixel:"),
PLANES, TEXT ("PLANES"), TEXT ("Number of color planes:"),
NUMBRUSHES, TEXT ("NUMBRUSHES"), TEXT ("Number of device brushes:"),
NUMPENS, TEXT ("NUMPENS"), TEXT ("Number of device pens:"),
}

devcaps []中的元素是上面的结构体结构么?
还有这样的用法?
这是我在windows编程的一些代码里面看到的。
有没有人知道的,解释下,谢谢了。
...全文
187 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
ltjish2 2009-02-10
  • 打赏
  • 举报
回复
晕,还是自己大意了。正纳闷结构体怎么没结构名了!!原来是这样啊,hehe
wenjunsu 2008-10-25
  • 打赏
  • 举报
回复
就这点代码!看不出devcaps []和结构体的关系!
LZ要贴全代码才好分析啊!

我顶了!
捕鲸叉 2008-10-25
  • 打赏
  • 举报
回复
dev是结构体的实例
xdxiaodao 2008-10-24
  • 打赏
  • 举报
回复
恩,因为数组的实际存储是线性存储的,所以上面的devcaps 初始化可以从线性存储理解会好一些。
e_sharp 2008-10-24
  • 打赏
  • 举报
回复
struct
{
int iIndex ;
TCHAR * szLabel ;
TCHAR * szDesc ;
}
devcaps [] = {...};

devcaps []中的元素是上面的结构体结构么?

-----------

是的

typedef struct _A
{
int iIndex ;
TCHAR * szLabel ;
TCHAR * szDesc ;
}A,*A;

A devcaps[] = {...}; //和这个一样
Arthur_ 2008-10-24
  • 打赏
  • 举报
回复
定义结构体的全局变量 一般都会这么做呀
malu_1982 2008-10-24
  • 打赏
  • 举报
回复
都是一样一样的
Gary@Tokyo 2008-10-24
  • 打赏
  • 举报
回复
直接初始化
once_and_again 2008-10-24
  • 打赏
  • 举报
回复
`
BLUE__OCEAN 2008-10-24
  • 打赏
  • 举报
回复
恩,我以前只会用
typedef struct _A
{
......
}A,*A;
哈哈,上面的用法还没见过,只能说自己见的少了。谢谢楼上各位解答。
  • 打赏
  • 举报
回复
o(∩_∩)o...
DDGG 2008-10-24
  • 打赏
  • 举报
回复
struct 
{
int iIndex ;
char * szLabel;
char * szDesc;
}

devcaps [] =
{
0, "HORZSIZE", "Width in millimeters:",
0, "VERTSIZE", "Height in millimeters:",
0, "HORZRES", "Width in pixels:",
0, "VERTRES", "Height in raster lines:",
0, "BITSPIXEL", "Color bits per pixel:",
0, "PLANES", "Number of color planes:",
0, "NUMBRUSHES", "Number of device brushes:",
0, "NUMPENS", "Number of device pens:",
};
DDGG 2008-10-24
  • 打赏
  • 举报
回复
可以的,其实就是这样:

struct 
{
int iIndex ;
char * szLabel;
char * szDesc;
}

devcaps [] =
{
0, "HORZSIZE", "Width in millimeters:",
0, "VERTSIZE", "Height in millimeters:",
0, "HORZRES", "Width in pixels:",
0, "VERTRES", "Height in raster lines:",
0, "BITSPIXEL", "Color bits per pixel:",
0, "PLANES", "Number of color planes:",
0, "NUMBRUSHES", "Number of device brushes:",
0, "NUMPENS", "Number of device pens:",
lbh2001 2008-10-24
  • 打赏
  • 举报
回复
当然是,每一行就是一个结构体,是数组中的一个元素
devcaps是结构体数组
dic_walter 2008-10-24
  • 打赏
  • 举报
回复
这样用没问题呀
caixingxin 2008-10-24
  • 打赏
  • 举报
回复
嗯。。。正是。。
影子LEON 2008-10-24
  • 打赏
  • 举报
回复
介绍window api的书很多都这么写的
CN_CHINA 2008-10-24
  • 打赏
  • 举报
回复
别忘记了在结构体变量后面还有格分号(;),就像5楼的一样。
mifeixq 2008-10-24
  • 打赏
  • 举报
回复
当然可以…… 不过少了个 ;

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧