Я пытаюсь выучить C и наткнулся на что-то странное:
struct
{
int i;
double j;
} x, y;
struct
{
int i;
double j;
} z;
Здесь вы можете видеть, что я создал два struct
с одинаковыми элементами.
Почему при попытке назначить x = z
будет выдана ошибка компиляции, а x = y
- нет? Они имеют одинаковое содержимое, так почему я не могу назначать их друг другу взад и вперёд, независимо?
Можно ли как-нибудь это сделать, чтобы я смог назначить x = z
? Или они просто должны быть одинаковыми struct
.
Может ли какой-нибудь гуру C указать мне правильное направление?