前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C/C++中scanf、sscanf、fscanf函数用法

C/C++中scanf、sscanf、fscanf函数用法

作者头像
用户7886150
修改2021-02-14 15:09:01
1.2K0
修改2021-02-14 15:09:01
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: C++ sscanf()

#include <stdio.h>

#include <stdlib.h>

int main(int atgc, int *argv[])

{

    int a;

    char buf[100] = {0};

    FILE *file = NULL;

    printf("请输入一个数字:");

    scanf("%d", &a);

    printf("a = %d\n", a);

    sscanf("123456", "%2d", &a);

    sscanf("abcdef", "%4s", buf); // 取指定长度的字符串

    printf("a = %d\nbuf:%s\n", a, buf);

    //取到指定字符为止的字符串

    sscanf("123456 abcdedf", "%[^ ]", buf); //取遇到空格为止字符串

    printf("取到指定字符为止的字符串:%s\n", buf);

    sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf); //取遇到大写字母为止的字符串

    printf("取到指定字符为止的字符串:%s\n", buf);

    // 取仅包含指定字符集的字符串

    sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf); //取仅包含1到9和小写字母的字符串

    printf("取仅包含指定字符集的字符串:%s\n", buf);

    //获取两个指定字符之间的字符串

    sscanf("iios/12DDWDFF@122", "%*[^/]/%[^@]", buf);

    printf("取两个指定字符之间的字符串:%s\n", buf);

    //给定一个字符串"hello, world",仅保留"world"

    sscanf("hello, world", "%*s%s", buf); // %*s表示第一个匹配到的%s被过滤掉

    printf("%s\n", buf);

    //从文件中读取

    file = fopen("hello.txt", "r");

    if(NULL!= file)

    {

        fscanf(file, "%s", buf);

        printf("从文件中读取:%s\n", buf);

    }

    fclose(file);

    return 0;

}

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档