NESC файлы с использованием функций файла C

Я помогаю понять, пока мой источник не компилируется, основные сообщения об ошибках:

SerialC.nc:43: syntax error before `&'
SerialC.nc:43: warning: return-type defaults to `int'
SerialC.nc:43: conflicting types for `startList'

В моей реализации я работаю с заголовочным файлом, чтобы определить структуру и интерфейсы для доступа в файле nesC, одно из моих сомнений касается структуры! Могу ли я определить структуру как в C для запуска в nesC?

Мой код в заголовочный файл:

typedef struct {
    float Knowledge_base[MAX_TAM];
    int control; 
}Temp;

void startList(Temp* knowledge_base);

void knowledge_base_control(Temp* knowledge_base, float temp_real);

Мой файл.c:

void startList(Temp* knowledge_base){
    int i;
    knowledge_base->control=0;
    for (i=0; i<MAX_TAM; i++){
        knowledge_base[i]=0;
    }
};

Перед всеми объявлениями и реализациями я пытаюсь использовать это в моем файле nesC, но я получаю некоторую ошибку в выводе.

Мой файл nesC:

#include "ESA.h"

Temp knowledge_base_real;

startList(&knowledge_base_real);

1 ответ

Определение функции должно выглядеть так:

void startList(Temp* knowledge_base){
    int i;
    knowledge_base->control=0;
    for (i=0; i<MAX_TAM; i++){
        knowledge_base->Knowledge_base[i]=0; // changed here
    }
} // remove ; here

Вам нужно получить доступ Knowledge_base массив внутри knowledge_base структура. Удалить ; в конце определения функции.

Другие вопросы по тегам