Программа не видит заголовочный файл
Всë лежит в одном репозитории, подключаю через #include файл, в ответ получаю нет такого файла или каталога. Подскажите, пожалуйста, почему такая ошибка может быть? В убунту в вс код создал заголовочный файл для проверки того как это работает, но его почему-то не видят.
#include "sum.h"
int main()
{
plus(5,10,15);
return 0;
}
Пишет нет такого файла или каталога. В файле sum.h как раз определена функция
Ответы (1 шт):
Очень мало информации
Ну допустим, возможно ты записал путь в <>
, если это так, то измени на ""
Либо, пересмотри путь, я однажды когда изучал вёрстку перепутал имя файла и вместо style.css
написал style.ccs
Посмотри на дирекотрии, путь указывается от пути сишного файла до заголовочного
То есть если у тебя что-то типо такого:
inc
|----- file.h
src
|----- file.c
то в file.c будет ../inc/file.h
Если у тебя UNIX система, то проверь регистр путя, то есть ../Inc/file.h
выдаст ошибку
Ну опять же, если UNIX, проверь что пути указываются через /
, а не \
Больше сказать ничего не могу
Для подробностей скинь ссылку на репозиторий
UPD:
Тут у меня 4 варианта:
- Нету
sum.c
, определяющего функцию - При комиляции ты его не добавил
- Неправильное количество параметров
- Вероятно, у тебя в заголовке есть строки:
#ifndef SUM_H_
#define SUM_H_
plus(int n1, int n2, int n3);
#endif
Обрати внимание на название макроса SUM_H_
Если у тебя не SUM_H_
или SUM_H
, некоторые компиляторы могут ругаться из-за этого
Также, в моём "виртуальном" заголовке я забыл в прототипе написать тип, который он возвращает:
void plus(int n1, int n2, int n3);
С этим нужно быть внимательным
UPD2:
Попробуй добавить при компиляции флаг -I.