Дублирующиеся символы с переменной, определенной в заголовке и множественной защитой от включения

У меня есть этот файл заголовка (называется ft_opp.h), что яЯ пытаюсь #include в двух разных .c файлов:

#ifndef __FT_OPP_H__
# define __FT_OPP_H__
t_opp gl_opptab[] = {{"-", &ft_sub}, \
{"+", &ft_add}, \
{"*", &ft_mul}, \
{"/", &ft_div}, \
{"%", &ft_mod}, \
{"", &ft_usage}};
#endif /* __FT_OPP_H__ */

У меня нет выбора, кроме как использовать этот файл без изменений, чтобы определить массив gl_opptab (это 'часть упражнения в школе, и яЯ должен использовать этот файл как есть).

Тем не менее, я продолжаю получать следующее сообщение от GCC после компиляции:

дублирующийся символ _gl_opptab в: /var/folders/zz/zyxvpxvq6csfxvn_n0000hvc00046v/T//ccrPWPyP.o /var/folders/zz/zyxvpxvq6csfxvn_n0000hvc00046v/T дубликаты символов: 1 x 0d664 делать: * [ft_advanced_do-op] Ошибка 1

Я попытался включить его только в один файл и с помощьюextern t_opp* gl_opptab в другом .c файле. Но это неКажется, не работает.

Как я мог это сделать?

Ответы на вопрос(1)

Ваш ответ на вопрос