如何将RGBQUAD作为参数传递?

时间:2013-04-23 17:27:55

标签: c++ c visual-studio

作为一个学习例外,我试图将RGBQUAD作为参数传递给一个只会使结构成员变黑的方法。调用'black_quad'时程序崩溃。我哪里错了?

void UpdateFields() 
{
    RGBQUAD quad;
    black_quad(&quad);
    /* snip */
}

void black_quad(RGBQUAD* quad) 
{
    quad->rgbBlue = 0;
    quad->rgbGreen = 0;
    quad->rgbRed = 0;
}

1 个答案:

答案 0 :(得分:2)

很难说 - 看来你的问题出在其他地方。 下面的代码测试和工作win7 gcc 4.7。??

#include <windows.h>

void black_quad(RGBQUAD* quad)
{
    quad->rgbBlue = 0;
    quad->rgbGreen = 0;
    quad->rgbRed = 0;
}
void UpdateFields()
{
    RGBQUAD quad;
    black_quad(&quad);
}

int main()
{
    UpdateFields();
}