满意答案

max60417

推荐于 2018.03.08

采纳率:47%    等级:12

已帮助:11226人

指针没什么难的好吧,其实指针的难点在于应用,可是有很多人在接触指针的时候首先会对指针的理解上感到困难。

首先呢,在C语言里面,一个程序里面的变量在内存里面是紧挨着的,而且每个变量的都有一个地址,所以这个地址也是紧挨着的,一般情况下,程序员使用十六进制来表示指针的地址比较方便。

我们可以通过(&变量)来得到变量的地址,并且可以把这个地址赋值给一个变量,当然也可以将这个地址传递给某一个子函数。

当一个子函数得到这个地址的时候,可以直接用(“%f”,被赋值某个变量地址的变量)来输出这个变量的地址,而且很厉害的一点就在于,我们可以通过(*被赋值某个变量地址的变量)来得到这个变量的值。

#include

int zizhihanshu(int *f){ //这里就是一个子函数

printf("%p \n",f); //这里我们可以输出变量的地址

printf("%d \n",*f); //在变量前面加*号,我们就可以随时调用这个变量的值了,当然,这个指针f的值是f所指向的那个变量的值,指针f本身就是一个变量,指针变量f的值是所指向的那个变量的地址,指针变量f本身也有一个地址。

}

int main(){

int d = 155;

int ad = 2;

printf("%p \n",&ad); //在主函数里面,我们可以通过&变量来输出这个函数的地址

printf("%p \n",&d);

zizhihanshu(&d); //这里,我们直接给子函数返回一个地址

}

其次,可以用变量d和变量ad的地址用十六进制计算机减一下,你会发现,得到的结果是4或者是(-4),也就是说,一个整数变量在内存里面所占的字节为4个,同时也印证了,一个在代码里面紧挨着的被赋值的变量,在内存里面的地址也是紧挨着的。

&符,取地址

*符,将地址上的值反应出来

C语言的指针其实是很容易理解的,关键在于之后在实际操作中怎么灵活的运用指针。如果学到指针这个知识点的时候,进展不是很好的话,可以在网络上搜索一些关于内存方面的知识,这样可以帮助理解。

10分享举报

c语言指针哪里难,为什么c语言指针那么难?相关推荐

  1. c语言指针尚观嵌入式,C语言-指针

    本文目录 •直接引用 •一.什么是指针? •二.指针的定义 •三.指针的初始化 •四.指针运算符 •五.指针的用途举例 •六.关于指针的疑问 指针是C语言中非常重要的数据类型,如果你说C语言中除了指针 ...

  2. c程序语言难么,c语言难不难

    计算机二级考试听说不是很难,但是计算机二级考试c语言难不难大部分同学就不太清楚了.下面是由出国留学网小编为大家整理的"计算机二级考试c语言难不难",仅供参考,欢迎大家阅读. 计算机 ...

  3. c语言二级程序设计题难吗,c语言二级公共基础知识试题特点

    二级C一直以来是整个二级考试中试题最多.难度最大.报考人数也最多的考试,以下是由学习啦小编整理关于c语言二级公共基础知识试题特点的内容,希望大家喜欢! 从2008年4月份开始笔试由原来120分钟减少到 ...

  4. C语言指针详解——入门C语言指针,初级指针使用。

    原文地址:我的个人博客点击查看 C语言教程第二弹--指针详解 所有学过C语言的人都知道,C语言难在它的指针的使用和理解,今天,我带给大家C语言的指针的教程,供大家学习交流,如果有讲的不对的地方,请给作 ...

  5. python语言程序设计计算机二级难不难_python语言程序设计计算机二级难不难_全国计算机二级的难度有多大?...

    计算机二级任选一科目考试及格即可获取计算机二级证书.自2019年3月考试起,二级语言类及数据库类科目(即除MS Office高级应用外的其他二级科目)调整获证条件为:总分达到60分且选择题得分达到50 ...

  6. c语言中用指针的必要性,浅析C语言使用指针的必要性.pdf

    第 21 卷第 8 期长春大学学报Vol 21No 8 2011 年 8 月 JOURNAL OF CHANGCHUN UNIVERSITYAug 2011 收稿日期 2011 06 20 作者简介 ...

  7. c语言指针课堂教学设计,C语言程序设计 指针 C教学设计8单元V1.0.doc

    教学设计 河北工业职业技术学院 "C语言程序设计"教学设计 系 别: 计算机技术系 设计教师: 宋铁桥 设计时间: 2017年4月25日 教学内容 第八单元 指针 授课教师 宋铁桥 ...

  8. C语言基础之10:数组和指针

    Tips1: 关键字:static 运算符:&.*(一元) 如何创建并初始化数组 指针(在已学过的基础上). 指针和数组的关系 编写处理数组的函数 二维数组 Tips2: 人们通常借助计算机完 ...

  9. c语言输入后没答案,C语言章节习题及答案(无指针)解读.doc

    C语言章节习题及答案(无指针)解读 <C程序设计>复习题集 第2章 基础概念 一.选择题(在下列各题的A).B).C).D)四个选项中,只有一个选项是正确的) 2.1以下叙述中正确的是 A ...

最新文章

  1. 最新NLP核心技术与前沿实践分享!
  2. Linux memcached 安装
  3. ListActivity的onListItemClick不响应的解决办法
  4. 长尾关键词挖掘工具和使用方法
  5. [gist]Android SHA-1
  6. UA MATH564 概率论II 连续型随机变量1
  7. layui设置按钮不可点击_(eblog)7、博客发布收藏、用户中心的设置
  8. ASP.NET Core 运行原理解剖[2]:Hosting补充之配置介绍
  9. android 获取cpu使用率_超详细的zabbix监控windows磁盘IO及cpu使用率教程
  10. VMware Workstation下载,安装centos7.6 配置【图文教程】
  11. HttpServletRequest 需要导入xx包?
  12. markdown与latex:数学符号远远大于\gg和远远小于书写\ll
  13. 开源ext2read代码走读之-如何读取MBR分区的内容
  14. 频谱图 与傅立叶变换
  15. 128 黙齎 李貴 曷若親征
  16. iPaste:剪贴板界的一股清流
  17. linux oracle 失败怎么办,Linux开机报错unable to load selinux policy怎么办?
  18. cmd命令打开文本文档_Windows10家庭版打开「本地组策略」
  19. [BZOJ4408][FJOI2016]神秘数(主席树)
  20. bzoj 2648 SJY摆棋子 cdq分治+树状数组

热门文章

  1. EMAS Serverless搭建《私人云相册》小程序赢中秋大奖
  2. php 获取pdf 坐标,php – 如何从pdf中提取文本图层和背景图层?
  3. HTTP请求信息的Head书包
  4. 程序员、架构师、技术经理、技术总监和CTO分别都是干什么的?
  5. matlab表示函数波形,MATLAB绘制典型型号波形
  6. PM产品经理之书籍篇
  7. 100天精通Python丨基础知识篇 —— 05、7大基础数据类型详解(变量、列表、集合、字典、元组)
  8. 2023年三月TIOBE编程语言排行榜TIOBE Index for March 2023
  9. Arm确认对华禁售先进处理器IP!平头哥宣布:RISC-V成功运行安卓12
  10. 笔记本电脑死机重启故障