主题 : 【问题】Turbo C 下如何获得内存分配的长度?
新新航向
级别: 模拟名流
UID: 294
精华: 1
发帖: 7668
威望: 4 星
金钱: 92 浮游币
贡献值: 54 点
好评度: 12540 点
人气: 74 点
在线时间: 268(时)
注册时间: 2004-03-26
最后登录: 2023-04-11
楼主  发表于: 2006-08-04 18:28

【问题】Turbo C 下如何获得内存分配的长度?

如:
int *dat;
dat = (int *)calloc(1024, sizeof(int));
如果只以dat为函数参数,在函数内部有什么方法能得知dat所指内存的长度呢?
新新航向
级别: 模拟名流
UID: 294
精华: 1
发帖: 7668
威望: 4 星
金钱: 92 浮游币
贡献值: 54 点
好评度: 12540 点
人气: 74 点
在线时间: 268(时)
注册时间: 2004-03-26
最后登录: 2023-04-11
沙发  发表于: 2006-08-08 06:36

引用
引用第1楼Taburiss2006-08-07 12:31发表的“”:
SIZEOF...就是取得长度啊……

不是吧,T大,sizeof是检测类型大小的,难道有高深的方法,望赐教

to2楼:malloc可以知道大小?
新新航向
级别: 模拟名流
UID: 294
精华: 1
发帖: 7668
威望: 4 星
金钱: 92 浮游币
贡献值: 54 点
好评度: 12540 点
人气: 74 点
在线时间: 268(时)
注册时间: 2004-03-26
最后登录: 2023-04-11
板凳  发表于: 2006-08-08 08:31

如果是这样
int function(int *ptr)
{
  return (sizeof (ptr));
}

能返回指针所指内存的长度吗?
新新航向
级别: 模拟名流
UID: 294
精华: 1
发帖: 7668
威望: 4 星
金钱: 92 浮游币
贡献值: 54 点
好评度: 12540 点
人气: 74 点
在线时间: 268(时)
注册时间: 2004-03-26
最后登录: 2023-04-11
地板  发表于: 2006-08-08 22:43

我就是以前试过不行才问有没有可行的方法的,

至于用xms现在我还不敢想。。。
新新航向
级别: 模拟名流
UID: 294
精华: 1
发帖: 7668
威望: 4 星
金钱: 92 浮游币
贡献值: 54 点
好评度: 12540 点
人气: 74 点
在线时间: 268(时)
注册时间: 2004-03-26
最后登录: 2023-04-11
草席  发表于: 2006-08-10 05:55

引用
引用第9楼Taburiss2006-08-09 09:45发表的“”:
偶手头米有TC~~~
只有VC2005...
做个Win32API console的……试验……
可以取出来~~


那返回的是内存段的大小?我怎么看像是指针的大小。。。