C语言一个小小的问题引起的对指针的探究。。。

废话不多说。下面是这个大家认识的一个及其简单的程序:

 1 #include     <stdio.h>
 2 void A(int  a[])
 3 {
 4     printf("%d/t", sizeof(a));
 5 }
 6 int main()
 7 {
 8     int a[512];
 9     int *p;
10     printf("%d/t", sizeof(a));
11     A(a);
12     printf("%d/n", sizeof(p));
13     return 0;
14 } 

这个程序大家先看一遍再拿到编译器里运行调试,发现什么了没?输出的是512       4(2)    4(2)。 我今天下午查了些资料,才知道了,原来是自己基础没掌握好,现在我就来解释下:

第一个输出512,是因为它是一个数组,所以输出了整个数组所站的总共的内存字长大小。但为什么后面输出的是4呢???原来啊,编译器在对数组进行地址参数传递的时候,复制了内存地址,结果就使得数组直接变成指针了。。就是这个原因~但为什么输出的是4(2)呢???呵呵,这个就是指针的构成了,其实所有的指针都只是一个无符号的整形数。。我的编译环境是32位的linux。处理器寻址能力为2^32-1,相当于就是站了4个字节空间的大小。但在DOS(TC)环境下编译,由于dos是16位的,所以就只输出的2咯~~

posted on 2012-06-02 08:59 依旧涛 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/t-bruce-yu/archive/2012/06/02/2531544.html

C语言一个小小的问题引起的对指针的探究。。。相关推荐

  1. char转成string_真没想到,一个小小的String居然还有这么多窍门?

    推荐学习 公司来了位阿里P8大神,看完他的手写"Kafka笔记",万分膜拜 牛掰!"基础-中级-高级"Java程序员面试集结,看完献出我的膝盖 真没想到,一个小 ...

  2. java的正则表达式 CPU_小心踩雷!一个小小的正则表达式竟把CPU拖垮......

    原标题:小心踩雷!一个小小的正则表达式竟把CPU拖垮...... " 前几天线上一个项目监控信息突然报告异常,上到机器上后查看相关资源的使用情况,发现 CPU 利用率将近 100%. 通过 ...

  3. Python实现一个小小的图片播放器,就是这么简单!

    python实现图片播放器 零.小序 一.图片播放器介绍 1.功能介绍 2.用到的技术 3.图片播放效果 二.主要代码 1.Python代码 2.代码下载地址 零.小序 Python是一个语法简单的语 ...

  4. ♥51单片机也可以实现一个小小的智能家居√(smart-home)♥

    ♥51单片机也可以实现一个小小的智能家居√(smart-home)开源所有代码♥ 文章目录 ♥51单片机也可以实现一个小小的智能家居√(smart-home)开源所有代码♥ 一.SmartHome I ...

  5. 关于贝叶斯的一个小小的总结

    为了要搞论文,我从图书馆借了一堆贝叶斯的书来看,虽然看得不算全面,还是在这里做一个小小的总结:   茆诗松 <贝叶斯统计>  http://book.douban.com/subject/ ...

  6. 从 Go 语言一个文件描述符错误讲起

    转载地址:https://mp.weixin.qq.com/s/MGMWkOON3DBkSjBKxGr7Kw 先来看一个 demo: 1 package main2 3 import (4 " ...

  7. 硬件基础知识(12)---为什么我的处理器这么耗电?原因不只是一个小小的限流电阻.

    为什么我的处理器这么耗电?原因不只是一个小小的限流电阻... 记得有一次,客户拿着处理器板走进我的办公室,说它的功耗太大,耗尽了电池电量.由于我们曾骄傲地宣称该处理器属于超低功耗器件,因此举证责任在我 ...

  8. 移位 c语言一个变量存储两个值,【杭州C  培训】C语言中基础小问题总结

    1.printf格式输出函数 如果格式控制说明项数多于输出表列个数,则会输出错误数据: 如果输出表列个数多于格式控制说明数,则多出数不被输出. %md,m指的是输出字段的宽度.如果输出字段位数小于m, ...

  9. C语言 一个球从100米高度下落,每次下落反弹原来高度的一半,如此反复,求第10次落地时共经历了多少米?第10次反弹多高?

    C语言 一个球从100米高度下落,每次下落反弹原来高度的一半,如此反复,求第10次落地时共经历了多少米?第10次反弹多高? 代码: #include <stdio.h> void main ...

最新文章

  1. JMS(二):简单的JMS入门实例
  2. SpringBoot启动banner更改
  3. 余额宝利率破2.4%,你还会把钱放在余额宝里面吗?
  4. BZOJ1562: [NOI2009]变换序列(二分图 匈牙利)
  5. Java并发编程实战~生产者-消费者模式
  6. 反转了!“只问了1个框架,就给了35K的Python岗”
  7. 推动Windows的限制:USER和GDI对象 - 第2部分
  8. pytorch1.7教程实验——迁移学习训练卷积神经网络进行图像分类
  9. mysql创建师徒_[郑州|结业弟子]JAVA-乔兆年|2020年05月09日的日报-技能树.IT修真院...
  10. Windows 下Redis客户端可视化工具-Redis Desktop Manager
  11. 用大O记号法测量算法的效率(Algorithm efficiency Asymptotic notation Big O notation)
  12. PHP程序员职业发展规划和技术需求
  13. 史上最烂 spring aop 原理分析
  14. codeforces 14E. Camels(多维dp)
  15. 华为开发者联盟上架应用 完结
  16. 百度地图api html信息窗口,百度地图 javascript api自定义信息窗口
  17. 【毕业N年系列】 毕业第一年
  18. android项目实战博学谷百度云,Android项目实战系列—基于博学谷(七)课程模块(下)...
  19. 网站底部的统计代码HTML
  20. 海底捞市值超大多数上市房企,火锅是怎么做到比卖房还赚钱的?

热门文章

  1. 如何删除数据库中的所有用户表(表与表之间有外键关系)
  2. MySql命令行基本操作
  3. 计算机用户账户无法打开浏览器,请问怎么样禁止一个电脑用户使用IE浏览器
  4. php语言的四种循环控制语句,PHP循环控制语句
  5. linux 天文软件,新闻|开源新闻速递:天文软件 Stellarium 0.15.0 发布
  6. js 数组 ajax php,js里面的对象ajax post到php端直接变成数组了?
  7. 安宁计算机学院,滁州学院张燕咏、安宁两位教授应邀来我院指导工作
  8. 帝国cms录入表单模板php,帝国cms7.5在线表单提交制作教程
  9. java wmi远程桌面服务器_WMI实现远程监控多台windows服务器
  10. 前端开发——移动端及响应式布局解决办法总结(适配)