Я работаю с компилятором C89, и я сталкиваюсь с ошибкой ввода указателя.Передача структур с помощью указателя в C89
телефонный код:.
struct cpu_state_type cpu_state;
//Stuff here....
foo()
{
print_out_cpu(&cpu_state);
}
Print_out_cpu определяется в другом месте, а файл Н #included в
struct cpu_state_type
{
int r[12];
};
void print_out_cpu(struct cpu_state_type *c);
Я получаю сообщение об ошибке:
error: incompatible type for argument 1 of 'print_out_cpu'
Как лучше всего, как Я могу понять, &cpu_state
возвращает тип cpu_state_type*
, поэтому я смущен.
Вы можете попытаться бросить на '(cpu_state_type *)' и посмотреть, работает ли он/сбои? – pajton
Где находится 'struct cpu_state_type'? –
pajton: это ошибки на этом литье. Добавление (struct cpu_state_type *) заставляет его работать лучше, но потом говорит, что не может найти print_out_cpu (!!). –