scanf()函数中为什么取变量地址?

常见的 scanf() 函数使用形式:

printf("请输入两个数:");
scanf("%d %d",&a,&b);

要取地址的原因:

  • 首先要明确,变量在计算机中同时有地址和值这两个东西,地址表示变量放在计算机中的位置,值表示变量内容。计算机等同于中国这整个国家,变量等同于生活在这个国家中的某个人,我们要了解这个变量,首先要知道他生活在哪个城市(这个城市名类似于地址),然后知道他在城市中干什么(类似于值),只有准确知道这两个基本量,我们才对变量有个初步认识,变量也只需要我们认识到这里了。
  • 所以在用 scanf() 往变量里面写值时,我们要知道变量的地址后,再往对应地址的变量赋值,所以要取地址运算符。
  • 对比 printf(),printf() 要输出变量里的值,他只管要那个值,至于地址在哪,他也无所谓
  • 读和写本质区别是,写要地址,读只要值

参考链接

猜你喜欢

转载自blog.csdn.net/CV2017/article/details/81268105