关于宏定义的问题
#define AT_IMAGE(img, x, y) ((img)->data[(y)*(img)->step+(x)])typedef struct image{
uint8_t *data;
uint32_t width;
uint32_t height;
uint32_t step;
} image_t;
image_t img_raw;
AT_IMAGE(&img_raw, x1-1, y1);
请问AT_IMAGE(img, x, y) 这个宏data[(y)*(img)->step+(x)]这部分是什么意思,我有些不理解这样的写法 类似于自定义函数,如:#define add(x, y) (x+y)
// add(x, y) 为宏定义,参数:x 和 y,只要下面调用 add 自然需要 2个参数,值是 2个数之和
页:
[1]