Ошибка компилятора - C (СИ)
Формулировка задачи:
Код:
Выдает ошибку компилятор:
noname.c: In function ‘main’:
noname.c:22:13: error: incompatible types when initializing type ‘Node * {aka struct <anonymous> *}’ using type ‘Node {aka struct <anonymous>}’
Node *c= func(1,5,&a);
#include <stdio.h>
typedef struct {int x; int y ;} Node;
Node val ( int a, int b) {
Node c;
c.x = a;
c.y = b;
return c;
}
Node func (int a, int b, Node*d)
{
d->x = a;
d->y = b;
}
int main() {
Node a ={5, 10};
Node* b = &a;
a= val(2,4);
func(1,5,&a);
printf("%d , %d",b->x,b->y);
printf("%d , %d\n",a.x,a.y);
prin
}Решение задачи: «Ошибка компилятора»
textual
Листинг программы
Node a = {x. = 5, .y = 10};
Объяснение кода листинга программы
В данном коде происходит создание объекта типа Node с помощью фигурных скобок. Объект инициализируется двумя полями: x и y. Значения полей указываются после двоеточия. Вот список элементов кода с их номерами:
Node a- создание объекта типа Node с помощью фигурных скобок..x = 5- присвоение значению поля x объекта значение 5..y = 10- присвоение значению поля y объекта значение 10. Код не содержит циклов, функций или других операторов.