Проблема с с C

#c #openssl

Вопрос:

обновление
Я нахожу способ решить эту проблему, просто добавьте «-fpermissive» в опцию компиляции


Мне нужно использовать applink.c в C , поэтому я использую

 #ifdef __cplusplus
extern "C" {
#endif
#include <openssl/applink.c>
#ifdef __cplusplus
};
#endif
 

чтобы импортировать этот файл.
Но это не работает.
И когда я создаю программу, она возвращает много ошибок, таких как:

 C:/PROGRA~1/OPENSS~1/include/openssl/applink.c:104:47: error: invalid conversion from 'void* (*)()' to 'void*' [-fpermissive]
  104 |         OPENSSL_ApplinkTable[APPLINK_STDIN] = app_stdin;
      |                                               ^~~~~~~~~
      |                                               |
      |                                               void* (*)()
C:/PROGRA~1/OPENSS~1/include/openssl/applink.c:105:48: error: invalid conversion from 'void* (*)()' to 'void*' [-fpermissive]
  105 |         OPENSSL_ApplinkTable[APPLINK_STDOUT] = app_stdout;
      |                                                ^~~~~~~~~~
      |                                                |
      |                                                void* (*)()
 

Как я могу решить эту проблему?

Комментарии:

1. Почему вы включаете *.c файл <openssl/applink.c> вместо того, чтобы создавать его и связываться с ним ?

2. Включайте заголовки , а не исходные файлы.