Я скачал pdcurses source и смог успешно включить curses.h в мой проект, связал скомпилированную библиотеку и все хорошо.
После нескольких часов попытокВ библиотеке я увидел tuidemo.c в папке demos, скомпилировал его в исполняемый файл и отлично!именно то, что мне нужно для моего проекта.
Теперь проблема в том, что это код на C, и я работаю над проектом C ++ в VS c ++ 2008.
Мне нужны файлы tui.c и tui.h Как я могувключить этот файл C в мой код C ++?Я видел несколько предложений здесь
, но компилятор не был слишком доволен сотнями предупреждений и ошибок.
Как я могу продолжать включать / использовать этот TUI pdcurses включает!?
Спасибо
РЕДАКТИРОВАТЬ:
Я добавил выражение extern "C", так что мой тест теперь выглядит так, но я получаю другой тип ошибки
#include <stdio.h>
#include <stdlib.h>
using namespace std;
extern "C" {
#include <tui.h>
}
void sub0()
{
//do nothing
}
void sub1()
{
//do nothing
}
int main (int argc, char * const argv[]) {
menu MainMenu[] =
{
{ "Asub", sub0, "Go inside first submenu" },
{ "Bsub", sub1, "Go inside second submenu" },
{ "", (FUNC)0, "" } /* always add this as the last item! */
};
startmenu(MainMenu, "TUI - 'textual user interface' demonstration program");
return 0;
}
Хотя он успешно компилируется, он выдает ошибку во время выполнения, что указывает на неверный указатель:
0xC0000005: Access violation reading location 0x021c52f9
в строке
startmenu(MainMenu, "TUI - 'textual user interface' demonstration program");
Не уверен, гдеидти отсюда.еще раз спасибо.