用STRING太多了。PCHAR太不熟悉。为什么下面这个句子有时可以有时不可以呢?var
P: PChar;
begin
P:= AllocMem(1024);
ASSERT(P = nil);
FreeMem(P);
end;
P: PChar;
begin
P:= AllocMem(1024);
ASSERT(P = nil);
FreeMem(P);
end;
解决方案 »
- 关于form前后显示的问题
- 关于循环比较字符串的问题!
- 鉴于BS的强度和力度,wudi_1982(︻┳═一) ,ghyghost(爱国人士)各100分
- 诚聘:接口开发工程师(Delphi)(北京)
- 冒帖子被转移之痛苦求助!分不够再加!!
- 注册表操作!!!!~~~~~~~~~~
- 请问怎么画一个点,lineto只能画一条线(急)
- 急!Row cannot be located for updating.Some values may have bee changed since
- 菜鸟提问:File|New|Other...下NewItems Dialog...
- 凡是我的问题还没人回的,谁去拉一拉就给分,有几百分,快.......
- 一个看似简单的问题:一个计算表达式保存在字符串变量中(如:ss='1+2*3-4/5'),如何计算出此表达式的结果?
- 请大家推荐基本学习软件工程的书籍
P: PChar;
begin
P:= AllocMem(1024);
ASSERT(P <> nil);
FreeMem(P);
end;
应该就可以了!
P:= AllocMem(1024);
改成
GetMem(P, 1024);
ASSERT(P = nil);
目的是什么,var
P: PChar;
begin
GetMem(P,1024);
//P:= AllocMem(1024);
FreeMem(P);
end;
function AllocMem(Size: Cardinal): Pointer;
begin
GetMem(Result, Size);
FillChar(Result^, Size, 0);
end;//ASSERT(P = nil);这个断言的条件设置反了吧~~
PChar是一个指针类型;
可以用GetMem和AllocMem给它分配内存;
用FreeMem释放内存;