Динамическая структура данных

Man Utd PL спросил: 28 апреля 2018 в 09:25 в: c

Можете ли вы мне помочь с этими предупреждениями? Я понятия не имею.

warning: передать аргумент 1 из 'add_movie' из несовместимого типа указателя |

примечание: ожидаемые 'struct movies', но аргумент имеет тип 'struct movies_pointers' |

struct movies* add_movie(struct movies *pointer){
    if(pointer){
            struct movies* new_movie = (struct movies *) malloc(sizeof(struct
                                    movies));
            if(new_movie){                    load_movie(new_movie);                    new_movie->next=pointer;
                    new_movie->id=new_movie->next->id+1;                    return new_movie;
            }
            else{
                    printf("Malloc error!\n");
                    return pointer;
            }
    }
    else{
            printf("Lack of list!\n");
            return pointer;
    }
}

в главном

    add_movie(&movie);

1 ответ

Amal John ответил: 28 апреля 2018 в 09:44

Это связано с тем, что вы передаете тип данных struct movies_pointers * для функции, принимающей только struct movies *. Эти данные, которые вы передаете, т.е. Возможно, фильм типа struct movies_pointers * .Пожалуйста, проверьте код еще раз.

Ajay Brahmakshatriya ответил: 28 апреля 2018 в 09:38
вам нужно использовать тильду - `, а не одинарную цитату ', чтобы использовать форматирование кода на SO.
Amal John ответил: 28 апреля 2018 в 09:48
Спасибо за отзыв!
ACascarino ответил: 28 апреля 2018 в 11:28
@AjayBrahmakshatriya - педантичный, что (`) - это обратная сторона, а не тильда (~)!
Ajay Brahmakshatriya ответил: 28 апреля 2018 в 11:29
@ACascarino wow, я не знаю, почему я написал тильду. Я имел в виду обратный ход