typedef struct Vector2D
{
float x, y;
} Vector2D;
void Vector2DZero(Vector2D *pResult)
{
pResult.x = 0;
pResult.y = 0;
}
在功能Vector2DZero
中,我想为名为x
的矢量将y
和pResult
的值设置为0,但我不确定如何访问新函数中的变量,尤其是使用指针。 (我很确定我所做的不正确)。
我必须使用上述功能。
我需要使用箭头操作符吗?请帮忙。
答案 0 :(得分:0)
如果你想使用点
(*pResult).x = 0;
(*pResult).y = 0;
其他地方
pResult -> x = 0;
pResult -> y = 0;
答案 1 :(得分:0)
是的,您确实需要使用箭头操作符,因为我使用 x 执行了以下代码,或者您可以像使用 y 那样使用解除引用运算符:
#include <stdio.h>
typedef struct Vector2D {
float x, y;
} Vector2D;
void Vector2DZero(Vector2D *pResult) {
pResult->x = 0;
(*pResult).y = 0;
}
int main(){
Vector2D vec2d;
Vector2DZero(&vec2d);
printf("(%f,%f)\n", vec2d.x, vec2d.y);
return 0;
}