首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

malloc分配空间的有关问题

2012-03-09 
malloc分配空间的问题malloc()是堆式分配吗?如果是,那么不用malloc而是直接的inti是什么样的分配方式?两

malloc分配空间的问题
malloc()是堆式分配吗?
如果是,那么不用malloc而是直接的   int   i;   是什么样的分配方式?
两者除了malloc要用free以外有没有其他的区别啊?
谢谢!

[解决办法]
指针和指针所指的对象是两个不同的变量。

就好像
int i = 3;
i 和 3的关系并不是永远对应的,i 是一个存储空间, 3只不过是内容。内容变了,i 本身还是那块存储空间。

int *c = "c ";
也是这样的关系, 这里字符串的地址就是c指针的内容, c指针的内容变了,指向另一个对象,c 还是在那里。

其实指针和普通变量没有什么区别,一样是一块空间,只是大家所放的内容不同,所支持的操作不同。 指针同样也有地址, &c这个就是指针的地址,这和&i是一个道理,只是指针有一个特别的操作, *c ,这个可以取得他指向对象的空间。


热点排行