dealloc + %alloc() vs %realloc() - RPGLE



知道这两段代码在功能上ptr <> *null,相同吗?

dealloc(en) ptr;
ptr = %alloc(500);

ptr = %realloc(ptr:500);

No.

%realloc(( 保存 ptr 指向的存储的当前值。

因此,如果没有足够的空间来扩大现有空间,则返回相同的 ptr 值。 系统会将字节从原始空间复制到新空间。

从手册
:%REALLOC (重新分配存储(

返回指针指向的堆存储与 ptr 指向的堆存储具有相同的值。如果新长度比旧长度长,则未初始化附加存储。

相关内容

  • 没有找到相关文章

最新更新