“目前我们的程序就是这么写的”是什么意思,你们现有的.pc就是这么写的?能同预编译?那就看看预编译的选项吧!总觉得不大可能!那样的话要EXEC SQL BEGIN DECLARE SECTION干吗!
再说,搂主为什么不愿意加EXEC SQL BEGIN DECLARE SECTION呢,要是遇到varchar变量怎么办?
多谢各位的回复,我已经找到了答案了Pro*C/C++ Precompiler Programmer's Guide Precompiler Options PARSETo generate C++ compatible code, the PARSE option must be either NONE or PARTIAL. If PARSE=NONE or PARSE=PARTIAL, all host variables must be declared inside a Declare Section. See "Declare Section". 也就是说当 PARSE=FULL 的时候,所以的本地变量可以不放在 Declare Section中。至于 : hqskoala(大晟) 的疑问,我们可以通过 CHAR_MAP=VARCHAR2 来解决,自己在代码中注意 padding的black和末尾的'\0' 就可以了。因为我以前一直是在UNIX下开发,这些ORACLE的设置和MAKEFILE都是前辈写好的。现在自己想在Win平台建一个测试环境。所以有此一问。
Precompiler Options
PARSETo generate C++ compatible code, the PARSE option must be either NONE or PARTIAL. If PARSE=NONE or PARSE=PARTIAL, all host variables must be declared inside a Declare Section. See "Declare Section". 也就是说当 PARSE=FULL 的时候,所以的本地变量可以不放在 Declare Section中。至于 : hqskoala(大晟) 的疑问,我们可以通过 CHAR_MAP=VARCHAR2 来解决,自己在代码中注意
padding的black和末尾的'\0' 就可以了。因为我以前一直是在UNIX下开发,这些ORACLE的设置和MAKEFILE都是前辈写好的。现在自己想在Win平台建一个测试环境。所以有此一问。