为了账号安全,请及时绑定邮箱和手机立即绑定

Linux C语言指针与内存

难度初级
时长 2小时 5分
学习人数
综合评分9.60
263人评价 查看评价
9.9 内容实用
9.5 简洁易懂
9.4 逻辑清晰

最新回答 / 慕粉3838361
48位指的是【47:0】,有第0位;800000000 上面有讲,存放的是系统内核,操作系统用的。我感觉是这样,欢迎指正。
版本:gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
安装gdb工具:apt-get install gdb
练习:设函数void change(int,int)将交换两形参数值,如有两整型变量int a=10;int b=15,则执行change(a,b);之后,a,b值分别为(   )
*******

answer:10 15
解析:只是传值,只是change的局部变量,是实参的备份。
解决:加个指针,取地址符,实现交换功能。
对象那里我笑了,嘻嘻
我发现你声音特像起小点,所以特爱听你的课
指针最精华的部分, niu!
64位系统下,指针占8个字节,32位 4个字节。
栈、先声明的地址大,后声明的地址小,与代码段数据段相反。
编译器优化代码,把声明时不在一起的同一类型变量,放到一起(某种程度上修改了源码)
如 声明 int a ; float b ; int c; 编译后变量a的地址和c的地址是连在一起的.
老师做课件好用心,尤其是那些表情包!
x/8x 0x7fffffffe19c
0x7fffffffe19c: 0x00000003 0x00ff0000 0x00000002 0xffffe19c
0x7fffffffe1ac: 0x00007fff 0x00000001 0x0000000a 0x00000064
说明:依次分别是:a, i, b, p, array[0], array[2], array[2]
一共7个变量,占了32个字节,其中除了p是地址值,占8字节外,其他都为int型,占4字节。之所以打印结果会这样,p也就是&a被分成了两个int,0x00007fff(+)ffffe19c-->0x7fffffffe19c
电脑配置渣渣,虽然说安装好了虚拟机,根本跑不起来啊啊啊啊啊啊,只能认真看看视频教程了。。。。

已采纳回答 / JustWannaHugU
同学你好,前两天我回答了类似的问题,你可以参考参考书籍的话首推《C primer plus》第五版、六版都行,非常详尽、基础、深入;视频的话推荐浙江大学翁恺老师的在线课程:C语言入门与进阶传送门:http://mooc.study.163.com/course/YOOKCS0002-1000002011#/info要讲究方法:书和视频敲代码相辅相成,不能抱着大部头日夜不停地读,也不可一味的看视频最后、望采纳!
讲的好快。。。
我的这里b的地址在a前面 = = 哈哈哈 还有说六个元素 是因为有个int i啊
视频看不了了
视频看不了了

最新回答 / BK200
a i b这是编译器优化的吧,人为不能控制
课程须知
本课程是C语言中级课程,为了更好的学习效果: 1、需要有一定的C语言基础,如果没有基础的同学可以看《C语言入门》这门课。 2、本课程是在Linux环境下讲解,需要熟悉一些Linux命令。如果不了解的话可以在《Linux C语言编程基本原理与实践》这门课程中补充
老师告诉你能学到什么?
1、C语言中的指针是怎么回事 2、Linux下gdb调试工具是怎样使用的 3、指针与内存有着怎样的关系 4、数组与字符串之间的联系

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消