这是我的第一个问题,希望我会不够清楚......比较C中的真彩色像素
我有这个结构提供
typedef struct COLORTRIPLE
{
byte blue;
byte green;
byte red;
}
它包含在另一个结构类似:
struct color_temp
{
COLORTRIPLE color;
int temp;
};
和(EDIT)
#define PIXEL(image, row, column) \
image.pixel [(row) * image.width + (column)]
是一个宏。
所以会有PIXEL(bmpin,row,column).red, PIXEL(bmpin,row,column).green and PIXEL(bmpin,row,column).blue
。
我需要逐个像素地扫描位图文件,并检查当前像素是否等于color_temp结构的一种颜色。
我想是这样的:
if ((PIXEL(bmpin,row,column))==(map[n].color))
{...}
其中
struct color_temp map[]
是color_temp的载体。
但是cygwin的GCC说:
error:request for member 'color' in something not a struct or a union
有什么建议?
感谢
马克
它是C还是C++?你知道有一个区别。 – 2010-09-23 10:18:42
欢迎来到Stackoverflow。下次请使用编辑框上方的'101010'按钮来设置代码的格式,因为Naveen已经为您完成了。另外,如果这是一个家庭作业问题,请添加'作业'标签。 (它会提示人们张贴可帮助您学习的答案,而不是您可以自己翻阅的代码片段。)然后,确定您的代码和问题是C还是C++。除了一些语法上的相似之外,这两者的共同点很少。如果您回复评论,请不要忘记正确填写@address人员,因此答复会显示在他们的“Aswers”标签中。并请阅读常见问题解答。 – sbi 2010-09-23 10:20:38
如果'PIXEL(...)'是一个指针,那么'PIXEL(...)。red'是坏代码。什么是'PIXEL',一个宏? – 2010-09-23 10:25:23