当前位置: 首页 > news >正文

网站建设 洪塔百度一下你就知道原版

网站建设 洪塔,百度一下你就知道原版,文昌网站建设,购物商城英语来,猜猜看,这里的执行结果是什么? 这是今天课上的一道理解题,给大家一点点思考时间。 (心里有答案了再往下滑哦) 5 4 3 2 1 . 答案是,报warning!因为%d不是用来输出指针的哈…

 来,猜猜看,这里的执行结果是什么?

这是今天课上的一道理解题,给大家一点点思考时间。

(心里有答案了再往下滑哦) 

5

4

3

2

1

.

答案是报warning!因为%d不是用来输出指针的哈哈哈 

不过如果忽略warning呢?

那么最终答案是:5 

为什么是 5?

1 + 1 = 5?

哈哈别急,让我们来进行一些简单的实验。

#include<stdio.h>
int main()
{printf("%d\n", (int *)1 + 1); // 输出5//接下来把%d改为%p,输出地址printf("%p\n", (int *)1 + 1); // 输出0x5printf("%p\n", (int *)1 + 2); // 输出0x9printf("%p\n", (int *)2 + 1); // 输出0x6printf("%p\n", (int *)2 + 2); // 输出0xaprintf("%p\n", (int *) (1 + 1) ); // 输出0x2return 0 ;
} 

多实验几次就会明显发现,

第一个数每+1地址增加1,

第二个数每+1地址就增加4,

而(int*)(1+1) 也就是(int*)2,指向的就是地址2,

所以,系统应该是先执行(int*)1,将指针指向地址1,然后再执行+1,使指针指向当前地址的下一个位置,因为int占4个字节所以指针每次跳4个,所以最终指向1+4,也就是地址5的位置。

(如果将int改为其他类型也是同样:)

#include<stdio.h>
int main()
{printf("%d\n", (int *)1 + 1); //int 占4字节,输出5printf("%d\n", (short *)1 + 1); //short 占2字节,输出3printf("%d\n", (long long i*)1 + 1); //long long 占8字节,输出9return 0 ;
} 

以上是我的个人理解,欢迎大佬们前来赐教~

http://www.bjxfkj.com.cn/article/109358.html

相关文章:

  • 在线网站建设费用是多少太平洋手机网官网
  • 信用惠州网站建设网站开发设计手册
  • 做项目搭建网站 构建数据库网站最新域名ip查询接口
  • 建网站自学佛山关键词搜索排名
  • 餐饮业网站源码 织梦济南建设集团招聘信息网站
  • 阅读网站源码公司网站建设佛山哪家
  • 北海网站制作个人备案网站可以做淘宝客吗
  • 用自己的手机做网站ps在线网页版
  • 自己做导航网站wordpress获得所有分类
  • 网站建设推广语言免费字体设计软件
  • 音乐网站开发思路页面模板下载
  • 苏州微信网站建设如何做好一个企业网站
  • 网站建设性价比高如何建立网站会员系统
  • 电子商务网站建设读书报告宿迁网站建设公司排名
  • 深圳建科院公司网站dw网页制作表单
  • 怎么搭建自己公司网站做的网站打开慢
  • 天津城市建设管理职业学院网站wordpress 全屏图片
  • 宣传部网站建设策划书做门户网站需要学什么知识
  • 网络优化论文网站优化招商
  • 网站后台改成只有一个管理员登陆南昌建设网站公司
  • 网站建设应该有什么特点写资料的网站有哪些内容
  • 襄阳市做网站男女做暖暖暖网站
  • 如何建一个公司网站西安做兼职网站
  • 网站制作的重要性及步骤详解垂直网站建设方案
  • 网站模板上传在网上做翻译的网站
  • wordpress 置顶调用seo搜索引擎优化是做什么的
  • 遂川县城乡建设局网站一学一做看视频网站
  • 网站建设百度资源电商网站改版方案
  • 海口seo网站推广优化师培训
  • 做网站需要许可证吗太原王建设