注册 登录
编程论坛 C图形专区

请问这个函数中 指针的操作是什么意思[新手]

__堕小落 发布于 2011-09-06 17:59, 405 次点击
void GRPH_Pset(int x, int y, PIXEL c)
{
    PIXEL *p;

    if ((x >= GRPH_clip_window_sx) && (y >= GRPH_clip_window_sy) &&
        (x <= GRPH_clip_window_ex) && (y <= GRPH_clip_window_ey))
    {
        p=(PIXEL *)(GRPH_Buffer) + x + y * GRPH_width;
        *p = c;
    }
}

GRPH_Buffer是宏定义的一个地址~  对地址P的的操作不是很清楚
2 回复
#2
恋尘2011-09-08 13:08
我的理解是在条件成立时,给P指定一个地址,再把C的值放在这个地址中。

只看懂了指针部分,其他的都不懂。如有错误,欢迎指教。
#3
wchja2011-11-25 16:12
感觉像是一个扫描显示的东东。
如果当前的鼠标坐标XY在窗体范围内,就在当前坐标点显示像素C。
那个什么buffer的应该是该窗体指针首地址。指针一次移动X=1个,移动1列要*宽度,所有那给P的那一堆可能就是当前坐标点的地址,给P的内容就是传过来的像素PIXEL 类型的c
个人理解,这函数就是在窗体内X,Y那画个c。可能只是放进缓存吧,我不太懂,我C刚入门,呵呵
1