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

数组与直接开辟空间,该怎么处理

2012-06-05 
数组与直接开辟空间今天在看队列的时候 看到关于 int *的一个用法,具体是: int *qqmalloc(5*sizeof(int

数组与直接开辟空间
今天在看队列的时候 看到关于 int *的一个用法,
  具体是: int *q;
  q=malloc(5*sizeof(int ));
  之后 就 q[1],q[2]的这么调用了.
我想问的是 这个和 int q[5];
  然后再调用的区别是什么?
  难道是一样的??[code=C/C++][/code]

[解决办法]
楼主没有看过指针的应用么?指针申请的内存区域在堆空间内,而你定义int q[5]在栈空间。q指向了用malloc出来的内存的首地址,然后使用p[x]其实的意思是p+x*sizeof(int)

热点排行