qfedu-c-level/day12/d20.c

23 lines
586 B
C

#include <stdio.h>
#include <string.h>
struct POS
{
int x;
int y;
};
int main()
{
struct POS p1 = {0, 0};
struct POS *p2 = &p1; // 结构体指针指向结构体变量
// p2.x = 2; // 错误,结构体指针不能直接访问结构体变量的成员,需要使用 -> 运算符
p2->x = 2;
p2->y = 2;
printf("point1 x=%d, y=%d\n", p1.x, p1.y);
printf("point2 x=%d, y=%d\n", p2->x, p2->y);
// printf("point2 x=%d, y=%d\n", (*p2).x, (*p2).y); // *p2 也是一个结构体变量,可以使用 . 运算符访问成员
return 0;
}