| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2926 人关注过本帖
标题:scanf函数工作的原理。。。
取消只看楼主 加入收藏
暴强大叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:15
注 册:2013-4-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
scanf函数工作的原理。。。
图片附件: 游客没有浏览图片的权限,请 登录注册



#include<stdio.h>               
#include<conio.h>
void main(void)
{
    char m,t;
    int n;
    printf("please input m:\n");        //当程序运行到这一步时,我输入的数据是mn7k,目的就是看scanf匹配完m后,对于n及t的匹配是怎样的·结果如图,
    scanf("%c",&m);                      //图中m和n间的那个-858993460怎么解释啊,由于我的二进制补码原码学的不是很好,表示不能理解,望大神支招。。
    printf("please input n:\n");
    scanf("%d",n);
    printf("please input t:\n");
    scanf("%C",&t);
    printf("%c%d%c\n",m,n,t);
    getch();
}
搜索更多相关主题的帖子: void include please 二进制 
2013-04-13 17:06
暴强大叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:15
注 册:2013-4-9
收藏
得分:0 
回复 2楼 TonyDeng
哦,大意了,谢谢大神的指点,请问大神编译了吗?我从新编了,结果没变啊。。。又多了个问题,为啥改了&之后结果没变?
2013-04-13 17:34
暴强大叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:15
注 册:2013-4-9
收藏
得分:0 
回复 4楼 TonyDeng
请问您有好好看看我的代码吗?我输入mn7k就是要看scanf函数的“匹配模式”是如何运行的,正常的流程我知道,我现在要讨论的是scanf在读入键盘缓存时的匹配原则,第一步是匹配字符型变量m,对应的是字符”m“,第二步是整型变量n,结果对应的是字符"n",我想知道此时的scanf如何匹配的,以及-8。。。。这个数是怎么来的?还有最后的字符变量t被赋给了n,说明了scanf对于第二步的字符”n”处理应该是返回键盘的,可是那个-8。。。。这个数从何而来???可能这里我表达的不够清楚,望见谅。。。
2013-04-13 18:26
暴强大叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:15
注 册:2013-4-9
收藏
得分:0 
回复 8楼 TonyDeng
您可能还没理解我的意思,我输入错误的数据就是为了测试程序的啊,您现在说的就是我想要的解释啊,麻烦了。。。
2013-04-14 21:10
暴强大叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:15
注 册:2013-4-9
收藏
得分:0 
回复 9楼 a535182324
此乃正解,顶起。。。
2013-04-14 21:10
快速回复:scanf函数工作的原理。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016466 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved