【发布时间】:2012-08-26 03:49:51
【问题描述】:
我正在尝试通过玩 Arduino Uno 来学习 C。我正在审查code for the Colorduino library on github。我想知道++ 在应用于结构时如何工作。
Colorduino.h 中定义了一个PixelRGB 结构:
typedef struct pixelRGB {
unsigned char r;
unsigned char g;
unsigned char b;
} PixelRGB;
在Colorduino.cpp 中有一段代码将++ 运算符应用于PixelRGB 指针。这是如何工作的?
for (unsigned char y=0;y<ColorduinoScreenWidth;y++) {
for(unsigned char x=0;x<ColorduinoScreenHeight;x++) {
p->r = R;
p->g = G;
p->b = B;
p++;
}
}
【问题讨论】:
-
我不太了解 c 或 arduino,所以我不会将此作为答案发布,但也许它会增加所有公共字段?
-
在这种情况下,您正在递增指向结构的指针 p 所以现在 p 将指向下一个 PixelRGB
-
这不就是指针运算吗?
-
@nhahtdh... 可能是我需要查找并再次阅读的内容。
-
@Tanmoy,我想你可能是对的