社区
C语言
帖子详情
一个基础问题
wabcw
2004-03-30 12:31:07
下面这两句有什么区别:
int *p;
int a =10;
p=&a;
int *p = (int *)malloc(2);
*p=10;
我想问的是:第一种没有为指针分配地址,第二种为指针分配地址。
这两种方式的效果是一样的,单有什么区别,讲解越详细越好。
...全文
72
4
打赏
收藏
一个基础问题
下面这两句有什么区别: int *p; int a =10; p=&a; int *p = (int *)malloc(2); *p=10; 我想问的是:第一种没有为指针分配地址,第二种为指针分配地址。 这两种方式的效果是一样的,单有什么区别,讲解越详细越好。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Wenxy1
2004-03-30
打赏
举报
回复
int *p; //定义一个指向int的指针,现在p的值是随机的,也就是讲p指向的内存地址不定.
int a =10;
p=&a; //使p指向a.
int *p = (int *)malloc(2); //使这指向一个从heap(堆)分配的地址.
*p=10; //给刚分配的地址赋值
//注意,要delete p,否则会有内存泄露。
pengzhenwanli
2004-03-30
打赏
举报
回复
第一种用法,在实际中不大可能会用到。传递函数参数的时候使用
第二种需要自己管理内存的分配与释放
xrdsheng
2004-03-30
打赏
举报
回复
第一种在栈分配内存,会自动释放,第二种在堆分配内存,需自已释放,
int *p = (int *)malloc(2);
*p=10;
free(p);
bideyore
2004-03-30
打赏
举报
回复
delete p 是CPP的用法吧,与new搭配;
C中是malloc()与free()成对出现;
不对之处请高手指正。
java算法大全(含源码包)
java算法大全,有近100多种常见算法的源代码,是学习JAVA算法的难得资料。
一元云购源码云购源码夺宝 程序源码
一元云购源码云购源码夺宝 程序源码,3.17版本的。现在共享出来给大家研究,源码内图片删掉了,里面有点bug也需要自己解决,介意者请绕道
ThinkPHP新闻发布系统(前台+后台)绝对易学易用
通俗易懂的ThinkPHP文章发布系统源码(前台+后台) 主要是后台可以实现文章的非常方便的发布。 ThinkPHP框架+百度UEditor编辑器实现.具体使用方法参考ruby97的CSDN博客
.NET 二维码生成(ThoughtWorks.QRCode)源代码
.NET 二维码生成(ThoughtWorks.QRCode)源代码,源码介绍博客:http://www.cnblogs.com/jys509/p/4592539.html
数据结构+算法综合资料库
数据结构与算法综合资料库(CHM) 程序员必备的
基础
资料,对数据结构与算法很详细的讲解,里面还有许多示例,大家可以参考,学习编程语言都要用到的
基础
资料。初级走向高级必修的内功心法!
C语言
70,038
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章