Передача структуры в функцию - C (СИ) (72644)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. При попытке передачи структуры в функцию возникает ошибка: error: type of formal parameter 1 is incomplete Ругается именно на ту переменную структуры, что возвращаю. main.h
int StartGame (struct data Char);
 
struct data{
int stage;
int HPMax;
int HPcurrent;
int ChLevel;
char *NameCh[40];
};
main.c
#include "main.h"
int main()
{
    struct data character;
    character.stage=1;
    character.ChLevel=1;
    character.HPcurrent=40;
    character.HPMax=40;
    character.NameCh[40]="NoName";
    StartGame(character);
}
StartGame.c
#include "main.h"
 
int StartGame (struct data Char)
{
    ...
}
Ругается на строчку вызова функции в main.c StartGame(character); А точнее на "character". Вроде бы всё правильно делаю, по примеру. В чем может быть ошибка?

Решение задачи: «Передача структуры в функцию»

textual
Листинг программы
#include <string.h>
//...
strcpy(character.NameCh, "NoName");

Объяснение кода листинга программы

  1. Включаем библиотеку string.h, которая содержит функции для работы со строками.
  2. ...
  3. Создаем структуру character с полями NameCh типа char.
  4. Используем функцию strcpy для копирования строки NoName в поле NameCh структуры character.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы