对于C来说,这是一个我创建的简单结构。

typedef struct car {
    float x, y;
    unsigned char width, height;
} Cars;

我试图分配汽车的x和y属性:
Cars sedan;
sedan.x = 20;
sedan.y = 10;

错误
错误:在“.”标记之前应为“=”、“,“;”、“asm”或“attribute”
有什么想法吗?请帮忙!

最佳答案

我猜你有台词

Cars sedan;
sedan.x = 20;
sedan.y = 10;

在功能之外。你不能使用
sedan.x = 20;
sedan.y = 10;

在功能之外。在函数内部移动这些行。
另一个选择是使用初始化struct的成员(感谢@JonathanLeffler)
Car sedan = { .x = 20, .y = 10 };

关于c - 如何在C中为Struct属性赋值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40066862/

10-09 07:38