我的猜测是
因为要引入指针的概念就必须引入地址的概念
而scanf这种赋值类的 就好像存东西也需要寄存柜的号码一样吧 也需要“地址”
不过scanf这种取地址应该也是可以交给机器判断的,比如数组名本身是指针型的,本身就是地址,就不用取地址了
而其他非指针类型的变量名就要取地址,为什么没有这样做呢。。如果scanf不取地址,而是用和地址一样大小的int型数据代替地址的话能顺利赋值吗?试一下先
源代码

#include<stdio.h>
int main()
{
int a,b;
a=&b;
scanf("%d",a);
printf("%d",b);
return 0;
}

输入输出

32
32

答案是阔以的
这样的&“取地址”其实给我们提供了更多的可能性
并不只是“坑爹”害我出错的东西
c语言本身妹有问题
有问题的是老是打错的我吧。。
而printf平时打印变量不用取地址就是因为
printf也是可以打印地址的,只要加上取地址符号就行了
all in all
这样的c语言
更好的区分开了
地址和变量

c语言为什么scanf要取地址printf不用呢?相关推荐

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

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

  2. C语言中 指针变量 取地址符的用法 *指针变量名的用法

    文章目录 总结 Intro Code 图示 总结 众所周知,内存可以看成一个一个相邻的格子(类比Excel),而数据就存储于这些格子之中(size大的变量占用格子数多,size小就占用小).而每个格子 ...

  3. 关于对C语言中数组名取地址加减等操作的一点探究

    对于数组名取地址强制转换的操作 偶然在晚上学了C语言指针后网页闲逛找题时,被一个数组名取地址搞糊涂了,在自己试验加探索后我稍微悟了一点东西. 代码如下: #include<stdio.h> ...

  4. C语言函数名以及取地址的区别和联系

    有时看到如下的代码: /*****************************/ #include <stdio.h> #include <string.h> #inclu ...

  5. c语言 如何对数组取地址,C语言 对数组名取地址

    作者 : 卿笃军 你有没有想过,对一个一维数组名取地址,然后用这个地址进行加减运算.这会出现什么样的结果呢? 演示样例: int a[5] = {1,2,3,4,5}; int *p = (int * ...

  6. C语言对函数取地址,C语言函数名以及取地址的区别和联系

    有时看到如下的代码: /*****************************/ #include #include #include void test() { printf("123 ...

  7. C语言加取址符的作用,C语言中指针和取地址符的关系

    一 概念定义: 严格说起来,应该这么讲:指针存的是地址,而&运算符是取变量的地址. 指针原理: 其实计算机中的内存就像一个个抽屉(一兆内存就相当于1百万个抽屉),每个抽屉都有一个编号,用于存放 ...

  8. c语言地址符作用,C语言中指针和取地址符的关系

    一 概念定义: 严格说起来,应该这么讲:指针存的是地址,而&运算符是取变量的地址. 指针原理: 其实计算机中的内存就像一个个抽屉(一兆内存就相当于1百万个抽屉),每个抽屉都有一个编号,用于存放 ...

  9. 寄存器变量取地址的问题

    <c++ primer plus>一书中在描述寄存器变量时,这样写道: 使用关键字register提醒寄存器,通过使用CPU寄存器,而不是堆栈来处理特定的变量,从而提供对变量的快速访问. ...

最新文章

  1. Oracle CDC (Change Data Capture)更新数据捕获——概述
  2. Mongodb WiredTiger存储引擎特性
  3. 通过 运行实现快速打开应用程序
  4. 监控USB设备插入/拔出写法2
  5. Updater Application Block v1.0 翻译文档目录
  6. GDCM:gdcm::String的测试程序
  7. jsp输入限制正则表达式
  8. 前端使用linux命令更新项目生产包与测试包命令
  9. n个1组成的整数能被2013整除c语言,求大神解算法,“编写程序,求n至少为多大时,n个1组成的整数能被2013 整除。”...
  10. 关于安装Ubuntu后触摸板无法使用的解决方案
  11. C语言-freopen函数输入简单使用举例
  12. 【Level 08】U08 Positive Attitude L1 See the world
  13. php strip_tag 回车,详解PHP函数 strip_tags 处理字符串缺陷bug
  14. 软件工程计算机类电子信息类,热门的工科专业还要属计算机类、电子信息类、机械类...
  15. java代码对比工具_代码比较工具(Diffuse)
  16. 使用vue实现四级联动
  17. 有关网页没有显示数据库的值的问题
  18. 2020-05-05
  19. R语言如何做独立样本t检验
  20. lightdm 循环登录问题

热门文章

  1. 长文干货!走近人脸检测:从?VJ?到深度学习(上)
  2. 先搞一波kotlin,看它怎么说
  3. PDF信息批量提取至Excel
  4. 逆向分析某office插件
  5. 取消参考文献自动编号_利用Word自动维护参考文献的编号和引用
  6. ShareSDK实现一键分享
  7. 嵌入式系统体系结构编程 Ubuntu之QTE环境搭建友善之臂Tiny4412
  8. 何宾 单片机原理及应用_STC单片机原理及应用(第2版)
  9. JS实现页面加载完成之后自动刷新一次
  10. js实现父页面的刷新