",<地...">
美文网首页
c语言输入流

c语言输入流

作者: 柠檬红茶加点糖 | 来源:发表于2018-06-02 10:11 被阅读0次

    scanf
    getchar
    gets
    fgets

    1、scanf

    其调用格式为: scanf("<格式化字符串>",<地址表>);

    例1.1整数

    scanf("%d%d%d",&a,&b,&c);

    顺序读入3个整数,以空格 制表符 回车进行划分。

    例1.2字符-空格的作用

    scanf("%c%c%c",&c1,&c2,&c3);

    1.2.1"%c%c%c"中间没有空格

    i输入:

    a b c

    i输出

    c1=a
    c2= (空格)
    c3=b

    scanf("%c %c %c",&c1,&c2,&c3);

    1.2.2"%c %c %c"中间有空格(个数没有关系)

    ii输入:

    a b c

    ii输出

    c1=a
    c2=b
    c3=c

    例1.3字符串

    scanf("%s",s)

    i输入

    asd ffg

    i输出

    s="asd"

    截取空格前面的字符串。

    2、getchar()获取单个字符

    char c;
    c=getchar();

    等于scanf("%c", c)相当于scanf的简化版本。

    3、gets获取字符串

    char s[5];
    gets(s);
    printf("%s",s);

    i输入

    asdfghj

    i输出

    asdfghj

    因为c不检查是否超过数组的长度,所以可以传入超长的字符串,而在输出字符串的时候,是以字符串结束标志'\0'为准的。所以不推荐使用

    4、fgets获取字符串

    char buf[5000];
    fgets(buf,sizeof(buf),stdin)

    原本fgets是从文件中读取字符串的,这里导向到标准输入,并且这个函数是可以指定输入的字符串的长度的。

    相关文章

      网友评论

          本文标题:c语言输入流

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