我有一个名为Point
的结构typedef struct {
GLfloat x;
GLfloat y;
} Point;
创建一个Points数组:
Point *sPoints;
for(int i=0 ... // define sPoints
在其他地方,我想改变这些点上的变量。为什么这样做:
sPoints[100].x+=10;
但这不是:
Point pt = sPoints[100];
pt.x +=10;
有没有办法创建一个引用Point结构的临时变量,并允许我设置该结构的属性?真正奇怪的是,在我的非工作代码(pt.x + = 10)中,我实际上可以读取pt.x很好,我似乎无法分配它...任何帮助表示赞赏。
答案 0 :(得分:1)
它不起作用,因为在C中,该操作:
Point pt = sPoints[100];
在右侧创建项目的副本,而前者不复制。