免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1375 | 回复: 2
打印 上一主题 下一主题

[桌面系统] 关于read函数和sscanf函数的一点小疑问 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-09-25 16:45 |只看该作者 |倒序浏览
  1. #include"apue.h"
  2. int main(void)
  3. {
  4.         int n,int1,int2;
  5.         char line[MAXLINE];
  6.         while((n=read(STDIN_FILENO,line,MAXLINE))>0)
  7.         {
  8.                 line[n]=0;
  9.                 if(sscanf(line,"%d%d",&int1,&int2)==2)
  10.                 {
  11.                         printf("%d  %d  %d\n",n,line[0],line[1]);
  12.                         sprintf(line,"%d\n",int1+int2);
  13.                         n=strlen(line);
  14.                         printf("%d  %d  %d\n",n,line[0],line[1]);
  15.                         if(write(STDOUT_FILENO,line,n)!=n)
  16.                                 err_sys("write error");
  17.                 }
  18.                 else
  19.                 {
  20.                         if(write(STDOUT_FILENO,"invalid args\n",13)!=13)
  21.                                 err_sys("write errr");
  22.                 }
  23.         }
  24.         exit(0);
  25. }
复制代码
这是在apue中抄的一段代码,其中的printf是我自己加进去的,就是为了查看一下line数组,中对收到的数据是怎么存放的!
但是执行的结果却和我想的不一样,我以为line[0],line[1],line[2]会分别对应 n,int1,int2,但是不是,求明白人解答!
执行结果
  1. john_small@ubuntu:~/apue$ gcc -o add2 15-8.c
  2. john_small@ubuntu:~/apue$ ./add2
  3. 12 34
  4. 6  49  50
  5. 3  52  54
  6. 46
  7. 34 56
  8. 6  51  52
  9. 3  57  48
  10. 90
  11. 1 2
  12. 4  49  32
  13. 2  51  10
  14. 3
  15. 1 1
  16. 4  49  32
  17. 2  50  10
  18. 2
复制代码

论坛徽章:
125
处女座
日期:2014-06-14 02:20:38双子座
日期:2014-06-14 03:59:12处女座
日期:2014-06-14 04:14:31狮子座
日期:2014-06-14 05:24:38巳蛇
日期:2014-06-14 05:48:58巨蟹座
日期:2014-06-14 05:50:18摩羯座
日期:2014-06-14 06:23:58双鱼座
日期:2014-06-14 06:49:15亥猪
日期:2014-06-14 07:04:56巨蟹座
日期:2014-06-14 07:12:32双子座
日期:2014-06-14 07:26:53射手座
日期:2014-06-14 07:58:51
2 [报告]
发表于 2012-09-26 08:10 |只看该作者
int 和char

论坛徽章:
125
处女座
日期:2014-06-14 02:20:38双子座
日期:2014-06-14 03:59:12处女座
日期:2014-06-14 04:14:31狮子座
日期:2014-06-14 05:24:38巳蛇
日期:2014-06-14 05:48:58巨蟹座
日期:2014-06-14 05:50:18摩羯座
日期:2014-06-14 06:23:58双鱼座
日期:2014-06-14 06:49:15亥猪
日期:2014-06-14 07:04:56巨蟹座
日期:2014-06-14 07:12:32双子座
日期:2014-06-14 07:26:53射手座
日期:2014-06-14 07:58:51
3 [报告]
发表于 2012-09-26 08:11 |只看该作者
                           。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP