到底该申请多大的内存空间??

csdn小虫 csdn小虫 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
procedure TForm1.Button1Click(Sender: TObject); //把一个字符数组的内容拷贝到pchar变量中
var
p:pchar;
i:integer;
arrChar:array[0..19] of char;
begin
for i:=0 to 19 do
arrChar[i]:='a';
getmem(p,20);
CopyMemory(p, @arrChar[0], 20);
showmessage(strpas(p));
freemem(p);
end;
当上面的字符数组的长度是20的时候,拷贝后显示的p的内容有错误呀,最后会多个字符

但是我把字符数组的长度变成10后,也就是arrChar:array[0..9] of char;
申请的p的空间也相应减少,改后的程序如下:(显示的结果是正确的)。那到底要申请多少的空间呀?
procedure TForm1.Button1Click(Sender: TObject); //把一个字符数组的内容拷贝到pchar变量中
var
p:pchar;
i:integer;
arrChar:array[0..9] of char;
begin
for i:=0 to 9 do
arrChar[i]:='a';
getmem(p,10);
CopyMemory(p, @arrChar[0], 10);
showmessage(strpas(p));
freemem(p);
end;

另外一个问题,如果我用StrAlloc申请内存空间,又该申请多大呢?
...全文

相关推荐

C语言打开文件、判断大小、申请内存空间、初始化内存空间,复制读文件内容到内存空间带详细注解源代码

本篇文章是针对C语言编程初学者的一份详细教程,主要讲解了如何在C语言中打开文件、获取文件大小、申请内存空间并初始化内存空间,以及将文件内容读取到内存中。以下是对这些关键知识点的深入解析:1. 打开

woaizhoulu

易语言-申请远程进程内存空间易语言模块

本文将深入探讨易语言中的"申请远程进程内存空间"这一概念,并结合易语言模块源码进行详细解析。首先,我们要理解什么是易语言。

weixin_38748580

Linux中进程创建和内存空间申请

在Linux操作系统中,进程创建和内存空间申请是两个核心概念,它们构成了系统运行的基础。本文将深入探讨这两个主题,特别是进程0如何创建新的进程以及内存管理的机制。首先,让我们聚焦于进程创建。

张小打

大创完全模板,有申请立项到完全立项的所有文件

【大创完全模板】是一个全面的资源包,旨在帮助用户高效地完成从申请立项到完全立项的全过程。

波波摆谱

python 申请内存空间,用于创建多维数组的实例

本文档主要介绍了在Python中申请内存空间以创建多维数组的过程。首先,通过Python的列表(list)来构建多维数组时,作者以三维数组为例,展示了如何逐级分配内存。通过`[None]*d1`这样的

weixin_38663167
评论 2
收藏 已收藏
分享
返回顶部