ESQL 방식으로 Oracle을 사용하면서 ncurses 함수 사용하기
글쓴이: daybreaker / 작성시간: 일, 2006/10/08 - 12:07오전
학교 숙제로 ESQL을 통한 Oracle 이용 실습을 해보고 있습니다.
사용자 암호 입력을 받기 위해서 noecho() 및 getch() 함수를 제공하는 curses 라이브러리를 쓰고자 하는데요, 문제는 ESQL을 처리하기 위한 Precompiler에 #include <curses.h>가 포함된 main.pc 파일을 넘기면 curses.h에서 컴파일 에러를 낸다는 겁니다. Precompiler를 사용하지 않는 일반 C 프로그램의 경우는 아무런 문제가 없구요.
(ESQL은 C 언어에 바로 SQL을 embed하여 쓰는 것으로 SQL 표준으로 지정된 방법입니다. EXEC SQL ...; 식으로 C언어에 바로 sql을 쓸 수 있고, 파일 확장자는 pc를 가집니다.)
에러 메시지는 대략
Syntax error at line 342, column 2, file /usr/include/ncurses.h:
Error at line 342, column 2 in file /usr/include/ncurses.h
bool _notimeout; /* no time out on function-key entry? */
.1
PCC-S-02201, Encountered the symbol "_Bool" when expecting one of the following:
} char, const, double, enum, float, int, long, ulong_varchar,
OCIBFileLocator OCIBlobLocator, OCIClobLocator, OCIDateTime,
OCIExtProcContext, OCIInterval, OCIRowid, OCIDate, OCINumber,
OCIRaw, OCIString, short, signed, sql_context, sql_cursor,
struct, union, unsigned, utext, uvarchar, varchar, void,
volatile, a typedef name,
Syntax error at line 0, column 0, file main.pc:
Error at line 0, column 0 in file main.pc
PCC-S-02201, Encountered the symbol "<eof>" when expecting one of the following:
; : an identifier, end-exec, random_terminal
Error at line 0, column 0 in file main.pc
PCC-F-02102, Fatal error while doing C preprocessing
make: *** [all] Error 1이라고 나옵니다. -_-;
Forums:


C 의 데이터타입에
C 의 데이터타입에 bool는 없는 것으로 알고 있습니다.
C니까 bool이 없는 형태라고 에러를 내는게 아닌지..
-----------------
한글을 사랑합니다.
-----------------
한글을 사랑합니다.
댓글 달기