请问定义char buffer[HTTP_GET_MAX+4]出错?(50分)

  • 主题发起人 主题发起人 arychen
  • 开始时间 开始时间
A

arychen

Unregistered / Unconfirmed
GUEST, unregistred user!
请问定义char buffer[HTTP_GET_MAX+4]出错?
之前已经定义#DEFINE HTTP_GET_MAX 1024
出现错误信息:
[C++ Error] THttpGet.h(20): E2290 Array bounds missing ]
[C++ Error] THttpGet.h(20): E2040 Declaration terminated incorrectly
[C++ Error] THttpGet.cpp(71): E2451 Undefined symbol 'exception'
[C++ Error] THttpGet.cpp(102): E2451 Undefined symbol 'Buffer'
[C++ Error] THttpGet.cpp(108): E2451 Undefined symbol 'exception'
[C++ Warning] THttpGet.cpp(130): W8012 Comparing signed and unsigned values
[C++ Error] THttpGet.cpp(132): E2451 Undefined symbol 'Buffer'
[C++ Error] THttpGet.cpp(168): E2451 Undefined symbol 'exception'
主要是第一个错误信息!
如果改成char buffer[1028]就没有问题!
 
#DEFINE HTTP_GET_MAX 1028
char buffer[HTTP_GET_MAX]
 
还是没有用啊!
还是报错 !
 
define 小写,第二行加分号。
#define HTTP_GET_MAX 1024
char buffer[HTTP_GET_MAX+4];
 
define用大写肯定是编译不了。
我试了一下是可以的。
 
我是小写的,还是不行!
有什么配置上的原因吗?
 
你放在什么地方,#define 一般要放在引入头文件 #include 后面。
你可以把相关代码贴出来。
 
老兄:为什么总不结贴发分????以后别来这里问了,我是来催分的。
 
其实,如果要对数组进行动态分配维数的话,是不能像上面那样做的,像下面的方法做,即可:
int i = 12;
AnsiString *array = new AnsiString;
如果按上面的,不管你的i为多少,都可以帮你分配的,它的内存释放方法为:
delete[] array;
对了,大富翁可以有分的吗?呵呵,那我要常来了
 
后退
顶部