【发布时间】:2014-02-23 11:34:30
【问题描述】:
我尝试从位图文件中打印一个值。该结构在头文件中声明。 如何访问成员并打印出他们的值?
这是头文件中的代码。现在我想在 main.c 中打印成员宽度和高度的值。
typedef struct
{
unsigned int size;
unsigned int width;
unsigned int height;
unsigned short planeCnt;
unsigned short depth;
unsigned int compression;
unsigned int imageSizeBytes;
unsigned int xPelsPerMeter;
unsigned int yPelsPerMeter;
unsigned int colorsUsed;
unsigned int importantColors;
} bmpInfoHeader;
我试过这样做:
printf("%d", bmpInfoHeader.height);
printf("%d", bmpInfoHeader.width);
但我收到以下错误:
错误 C2228:'.width' 左侧必须有类/结构/联合
'bmpInfoHeader' : 非法使用该类型作为表达式
请帮忙。提前致谢
【问题讨论】:
-
你不能写
int=123;你必须做一个实例int i; i = 123; -
你在哪里声明bmpInfoHeader?请注意,这个变量与结构女巫同名是导致问题的原因。你需要做 bmpInfoHeader bmp = (初始化函数);