因为scanf要往你的变量里写入数值,所以他必须知道那个变量的地址,至于变量里存的是什么值,他是不管的,反正他写入之后就被覆盖成新的值了
对比printf,他是要输出变量里的数值,他只管要那个值,至于地址在哪,他也无所谓
这就是写和读的本质性区别,写只要地址,读只要值
变量其实同时有地址和值两个东西,我们一般用一个变量,都是直接写一个名字,其实如果这个名字在赋值号右边,就是代表值,如果在赋值号左边,就是代表地址,写出来一样,意义是不一样的,编译器自动帮你选择了正确的意义
变量名字写在函数参数里面时,和写在赋值号右边一样,也是代表值,可是像scanf这种函数,他确实需要地址,编译器只认识赋值号,不认识scanf,没法自动选到正确的东西,这时就需要你手动加一个取地址的符号&,明确告诉编译器去选择变量的地址给这个scanf来用

c语言 scanf为什么要用来取地址相关推荐

  1. C语言数组名、数组名取地址、数组首元素地址之间的关系

    C语言中数组名a.数组名取地址&a.数组首元素地址&a[0]三者的概念有点绕,花了点时间好好琢磨了一下,将自己的理解记录下来,如有错误之处,欢迎赐教. 首先看下面的一小段代码: #in ...

  2. C语言中的数组名取地址

    今天看到这样一道题目,有点懵,记录一下 c语言中的对数组名取地址是什么意思? c中对数组名取地址,实际得到的是指向该一维数组的指针,对于上述题目中的&arr,表示指向一维数组arr的指针,*( ...

  3. 【数据结构】你真的认识“”吗?它真的就只是“取地址”吗?或许你一直都在误解它。

    我们有时候在看数据结构相关书籍时,经常会看到这样的写法: void StackInit(ST& ps) {assert(ps);ps.a = NULL;ps.top = 0;ps.capaci ...

  4. c语言为什么scanf要取地址printf不用呢?

    我的猜测是 因为要引入指针的概念就必须引入地址的概念 而scanf这种赋值类的 就好像存东西也需要寄存柜的号码一样吧 也需要"地址" 不过scanf这种取地址应该也是可以交给机器判 ...

  5. C语言 什么时候用取地址什么时候不用取地址,符号讲解

    情况一: &是一个取地址运算符 &a是一个表达式,其功能是求变量a的地址 scanf函数的一般形式为:scanf("格式控制字符串",地址列表); scanf输入的 ...

  6. C语言scanf函数奇遇记

    C语言scanf函数奇遇记 作者:ocean    撰写日期:2011-11-20 博客链接:http://oceanspace.tk 看<The C Programming Language& ...

  7. C语言scanf函数详解和示例

    文章目录 一.数据输入 二.断章取义 三.scanf输入 1.输入整数 2.输入字符 3.输入浮点数 4.输入字符串 5.输入多个内容 6.示例(book13.c) 四.注意事项 五.获取视频教程 六 ...

  8. c语言地址有什么作用是什么,C语言中取地址运算符是什么?

    在C语言中取地址运算符是"&"."&"作为一元运算符,结果是右操作对象的地址:地址本身是一个抽象的概念,用于表示对象在存储器中的逻辑位置. 在C ...

  9. c语言中数组部分输入赋值,c语言scanf对数组赋值

    c语言动态数组赋值,,c语言结构体数组赋值,c语言scanf对数组赋值 c语言数组动态赋值,<手把手教你学51单片机-C语言>之六 中断与数码管动态显示,c语言结构体数组赋值,c语言sca ...

最新文章

  1. 生成有关 SQL Server 2005 Analysis Services 多维数据集数据源的本地化报表
  2. python中plotly.express中线条图,Plotly在Python中表达的意外行
  3. 【渝粤教育】广东开放大学 网络编程技术 形成性考核 (57)
  4. 95-22-010-停止-优雅停机
  5. 滴滴司机问我会 LRU 吗?
  6. 压力测试就是一种破坏性的性能测试
  7. 2011/05/19
  8. IDEA自动生成Mapper和实体文件
  9. Querydsl使用fetchCount()报错
  10. 中标麒麟系统u盘安装_中标麒麟u盘安装系统教程
  11. 从函数式编程到Promise
  12. 小程序免官费注册和突破实名只能绑定5个小程序的限制
  13. php如何与微信公众平台连接失败,微信公众平台接入问题,配置失败不知道是哪的原因?...
  14. 保研联系导师邮件模板
  15. PHP使用swagger-php自动生成api文档(详细附上完整例子)
  16. C语言获取norflash大小,NOR Flash 编程
  17. php env 函数不存在,PHP编程:探究Laravel使用env函数读取环境变量为null的问题
  18. 刀片服务器改台式电脑_刀片服务器安装指南_IT /计算机_信息
  19. mysql: create routin表示的是什么?,关于mysql create routine 权限的一些说明
  20. PaaS平台升级NFS报错排除

热门文章

  1. 检测CPU是否具备VT的功能,并开启
  2. CNC加工中心操作经验汇集,这次总结全了!
  3. nginx应用总结(1)-- 基础知识和应用配置梳理【转】
  4. (转)nginx应用总结(1)--基础认识和应用参数优化配置
  5. 可变车道怎么走不违章_可变车道不敢走?老司机教你正确的行驶方式,再也不怕违章了...
  6. mysql 192.168.0.%_如果mysql数据库所在的主机IP是192.168.0.1,用户名是ec,密码是123456,则用php连接这个mysql数据库的命令可以写为:...
  7. 01-深入理解JNI
  8. 社群运营的营销模型_AARRR营销模型
  9. 作为一名90后,快到30岁了,我有话讲
  10. 怎样开启计算机无线网络连接不上,电脑连接不上无线网络,详细教您解决笔记本电脑连不上无线网络...