要想将程序中的 scanf 行弄明白
首先要清楚的是:我们从键盘输入的全部都是字符。比如从键盘输入 123,它表示的并不是数字 123,而是字符 ‘1’、字符 ‘2’ 和字符 ‘3’。这是为什么呢?
操作系统内核就是这样运作的。操作系统在接收键盘数据时都将它当成字符来接收的。这时就需要用“输入控制符”将它转化一下。%d的含义就是要将从键盘输入的这些合法的字符转化成一个十进制数字。经过 %d 转化完之后,字符 123 就是数字 123 了。

第二个要弄清楚的是:&是一个取地址运算符,&后面加变量名表示“该变量的地址”,所以&i就表示变量 i 的地址。&i又称为“取地址i”,就相当于将数据存入以变量 i 的地址为地址的变量中。那么以变量 i 的地址为地址的变量是哪个变量呢?就是变量 i。所以程序中 scanf 的结果就把值 123 放到变量i中。

综上所述,scanf 语句的意思就是:从键盘上输入字符 123,然后%d将这三个字符转化成十进制数 123,最后通过“取地址 i”找到变量 i 的地址,再将数字 123 放到以变量 i 的地址为地址的变量中,即变量 i 中,所以最终的输出结果就是i=123。

以下是输入各种类型的符号的字母。

C++编程-scanf的用法相关推荐

  1. c语言scanf函数用法完全攻略,C语言scanf函数用法完全攻略

    本节介绍输入函数 scanf 的用法.scanf 和 printf 一样,非常重要,而且用得非常多,所以一定要掌握. 概述 scanf 的功能用一句话来概括就是"通过键盘给程序中的变量赋值& ...

  2. python多态的例子_Python编程之多态用法实例详解

    本文实例讲述了Python编程之多态用法.分享给大家供大家参考.具体分析如下: 什么是多态?顾名思义,多态就是多种表现形态的意思.它是一种机制.一种能力,而非某个关键字.它在类的继承中得以实现,在类的 ...

  3. VTK:可编程字形过滤器用法实战

    VTK:可编程字形过滤器用法实战 程序输出 程序完整源代码 程序输出 程序完整源代码 #include <vtkActor.h> #include <vtkCamera.h> ...

  4. 单片机编程软件很简单(五),keil单片机编程软件变量用法(下)

    对于单片机编程软件,想必大家均有所了解.针对单片机编程软件,小编曾对keil.IAR予以介绍.本文对于单片机编程软件的讲解,同样基于keil.本文中,将介绍keil单片机编程软件变量用法下篇.如果你对 ...

  5. c语言scanf中 作用,c语言中scanf的用法

    c语言中scanf的用法的用法你知道吗?下面小编就跟你们详细介绍下c语言中scanf的用法的用法,希望对你们有用. c语言中scanf的用法的用法如下: printf和scan函数的使用方法 一 pr ...

  6. 模板编程中typename用法

    模板编程中typename用法 文章目录 模板编程中typename用法 typename的常规用法 typename的第二个用法:修饰类型 typename使用规则 typename的常规用法 ty ...

  7. scanf()的用法总结

    scanf()的用法总结 最近在刷PTA数据结构时,发现自己对于scanf()的用法还不是很熟练,写下此篇做一记录. 1.scanf() 读入数字 如果是只用sacnf()读入数字的话比较简单. 可以 ...

  8. C语言中scanf函数用法详解

    scanf 的功能用一句话来概括就是"通过键盘给程序中的变量赋值".该函数的原型为: # include <stdio.h> int scanf(const char ...

  9. c语言中gets 、getchar 、fgets 、scanf的用法

    原文地址:https://www.cnblogs.com/-lyric/p/5118666.html http://c.biancheng.net/view/379.html gets--从标准输入接 ...

最新文章

  1. 那篇《中国AI觉醒》的文章,让西方的吃瓜群众们对中国展开了疯狂膜拜…不信你看
  2. [发布]Lucene索引分析工具Luke.Net 0.5升级版 (兼容Lucene.Net 2.9.4.1)
  3. dede如何做SEO,一起探讨下
  4. 如何计算出int的数据范围
  5. div动态消失的动画效果
  6. [环境] OpenAI gym经典控制环境CartPole-v0 介绍
  7. linux基本命令(49)——at命令
  8. 收藏| 一些可供参考的游戏出海技术架构与经验总结
  9. MySQL 5.7升级到8.0详细过程
  10. icom对讲机写频线定义_自制电台通用写频线(完整版).pdf
  11. android webview 下载图片,Android使用webView长按保存下载网络图片
  12. ARM启动流程及启动代码分析
  13. linux修改为英文环境、中文输入
  14. html-2-禁止手机页面放大缩小
  15. DVWA sql注入(high)
  16. 优派vx2480-hd-pro简评 1080p+24寸+144hz+ips直屏 千元小金刚便宜又大碗?
  17. 离线地图下载和webGIS简单应用
  18. xbox360 功率测试软件,Xbox Series X完整开箱照及功耗测试公开
  19. OpenCV漫水填充
  20. Kali WIndows 漏洞利用基础篇 (探索目标主机漏洞)

热门文章

  1. NLP实战1--词典、停用词、问答对的准备
  2. WeChat小程序·微信登录·开发参考文档
  3. Golang Test
  4. IText实现Html转PDF itextpdf-5.5.5.jar
  5. 计算机操作系统考试范围
  6. 基于像素的皮肤检测技术
  7. 终于还是降回ios4.2.1了
  8. 如虎添翼 高德地图+Serverless 护航你的假日出行
  9. 六十星系之20天机独坐子午
  10. java求椭圆的面积和周长_java实现绘制矩形和椭圆并计算面积和周长.doc