C 語言中的結構體 struct 可以將不同的資料類型放在一起,我們可以使用 struct 來做類似物件導向語言中的封裝
#include <stdio.h>
// 定義結構體 Point x, y
typedef struct Point {
int x;
int y;
} Point;
// 初始化 Point 的函式
void Point_init(Point *p, int x_val, int y_val) {
p->x = x_val;
p->y = y_val;
}
// 移動 Point 的函式
void Point_move(Point *p, int delta_x, int delta_y) {
p->x += delta_x;
p->y += delta_y;
}
// 印出 Point 座標表示
void Point_print(const Point *p) {
printf("Point: (%d, %d)\n", p->x, p->y);
}
int main() {
Point myPoint;
Point_init(&myPoint, 10, 20);
Point_print(&myPoint); // Output: Point: (10, 20)
Point_move(&myPoint, 5, -3);
Point_print(&myPoint); // Output: Point: (15, 17)
return 0;
}