美文网首页
scanf("%3c%3c", &a, &b)

scanf("%3c%3c", &a, &b)

作者: 许可欣小同学 | 来源:发表于2018-09-23 02:22 被阅读0次

问题

在书中看到这样的描述:



我们按照这个来操作一下:

代码

#include<stdio.h>

int main(int argc, char const *argv[])
{
    char a, b;
    scanf("%3c%3c\n", &a, &b);
    printf("a = %c b = %c\n", a, b);

    return 0;
}

输入:

abcdefg

输出:

a = e b = d

跟我们期望中有点不一样,我们希望他的结果是:a = a b = d,为什么会这样呢 ?

 

解答

这跟a b在内存中的地址是有关的
我们先看一下a b的地址:

#include<stdio.h>

int main()
{
    char a, b;
    printf("a = %p\nb = %p\n", &a, &b);

    return 0;
}

输出:

a = 0x7ffeebfb5bcb
b = 0x7ffeebfb5bca

a的地址值比b的大,说明a的地址在b的后面,也就是&a = &b + 1&是取址符);

a b的位置如下图所示,一个地址(1个字节)存一个字符:

a b的位置示意

把字符读进a的时候

从左到右读入:


读入a

分别将字符a, b, c写进~cc~cd~ce里面

把字符读进b的时候

也是从左到右读入

读入b
分别将字符d, e, f写进~ca~cb~cc里面。
注意!
原本地址~cb里面的a被新写入的e覆盖
原本地址~cc里面的b被新写入的f覆盖

打印a、b

因为char a的地址是~cb, ~cb里面现在是e
char b的地址是~ca, ~ca里面现在是d

输出结果

所心输出当然是:

a = e b = d

 
也可以验证一下,输出a地址右边那个地址里面的数,理论上应该是f

#include<stdio.h>

int main(int argc, char const *argv[])
{
    char a, b;

    scanf("%3c%3c\n", &a, &b);

    printf("a = %c b = %c a右边那个字符是:%c\n", a, b, *(&a + 1));
    return 0;
}

输出结果:

a = e b = d a右边那个字符是:f

没错,就是这样。

相关文章

  • scanf("%3c%3c", &a, &b)

    问题 在书中看到这样的描述: 我们按照这个来操作一下: 代码 输入: 输出: 跟我们期望中有点不一样,我们希望他的...

  • 2020上海3C自动化装配及测试展览会

    电子制造展|3C自动化展|3C自动化装配展|3C技术装备展|上海3C自动化展|上海3C自动化装配展|上海电子制造展...

  • 广东深圳哪里3c认证公司比较好

    如果想在广东深圳办理3c认证,很多区域都有3c认证公司,可以提供专业的3c认证服务,实现一站式的3c检测认证服务,...

  • 深圳3c认证机构哪个比较好

    哪个3c认证机构比较好一点 很多人在做3c认证前,都会询问哪个3c认证机构好。其实对于3c认证哪个好这个问题,网上...

  • 儿童玩具3C认证介绍

    一.哪些儿童玩具需要做3C认证? 只要在3C认证目录范围内的玩具产品都需要做3C认证,而且3C认证作为我国的强制性...

  • B支3C

    去6:50,7:05,7:15 回20:25,21:10,21:30

  • 解读 | 一文看懂中国强制性产品认证

    3C认证”“3C认证目录”……傻傻分不清楚? “3C免办怎么办理?” 中国强制性产品认证(China Co...

  • 2019年天猫3C小家电招商趋势

    天猫“品质3C 理想天猫”天猫3C数码小家电行业招商。招商涉及品类以小家电,智能设备,办公文教,包装,3C数码配件...

  • 2018-07-04

    专业代理上海免3C代理 推荐 3C目录外产品主要根据产品用途和技术参数来判断,如果不在目录外无法办理免3C;货物照...

  • 暖风机3C认证怎么做,需要注意什么,需要提供什么资料?

    风机是在3C认证目录范围内的,作为国家的强制性认证,风机是需要做3C认证的,而且没有这个3C认证的标志还不能销售,...

网友评论

      本文标题:scanf("%3c%3c", &a, &b)

      本文链接:https://www.haomeiwen.com/subject/dcdfoftx.html