标题:scanf("%s",str1)与 gets(str1)的读取原理区别
取消只看楼主
dj125
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-8-16
结帖率:33.33%
已结贴  问题点数:18 回复次数:1 
scanf("%s",str1)与 gets(str1)的读取原理区别
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
    char str1[20];
    printf("请输入字符串str1:");
    scanf("%s",str1);
//  gets(str1);
    printf("%s",str1);
    system("pause");
    return 0;
}
问题: 采用scanf("%s",str1)输入:键盘输入的字符串中有空格或者制表符则不能完全读取
     示例:输入One World!后,printf只显示One??????
但是gets()可以完全接受,因为它读取以换行符为结束标志的。
搜索更多相关主题的帖子: 标志 include system return 
2012-08-21 10:56
dj125
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-8-16
得分:0 
求教!!!!望给予回复
2012-08-21 10:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-379854-1-1.html




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

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