| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1243 人关注过本帖
标题:malloc 在定义数据空间大小的疑问
取消只看楼主 加入收藏
share32
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:214
专家分:663
注 册:2011-12-1
结帖率:60%
收藏
已结贴  问题点数:20 回复次数:2 
malloc 在定义数据空间大小的疑问
有一个全局int指针变量a
a=(int*)malloc(sizeof(int));
在函数a()给指针a[0]到a[4]赋值.


在函数b()中有一个int指针变量b
b=(int*)malloc(sizeof(int));
在函数b()给指针b[0]到b[4]赋值.

我的问题是有没有可能在给b连续复制的时候, a已使用的内存空间收到影响?




搜索更多相关主题的帖子: 影响 空间 函数 
2012-02-22 14:41
share32
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:214
专家分:663
注 册:2011-12-1
收藏
得分:0 
回复 2楼 icysky
那定义的时候是不是应该这样:

a=(int*)malloc(MAXSIZE*sizeof(int));

MAXSIZE为最大值?
 
2012-02-22 17:03
share32
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:214
专家分:663
注 册:2011-12-1
收藏
得分:0 
回复 5楼 慕羿
a=(int*)malloc(sizeof(int));
a[0]=1;
a[2]=2;
这样是可以的,但是只有a[0]申请了空间,
a[1]并没有,可是这两个的地址是连续的。
我不知道这么定义是否合法?
a[1]的值会不会出现问题?
2012-02-22 21:01
快速回复:malloc 在定义数据空间大小的疑问
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053639 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved