zoukankan      html  css  js  c++  java
  • 认识sscanf函数

    sscanf函数

    sscanf函数基本知识

    函数原型

    int sscanf( const char *buffer, const char *format [, argument ] ... );

    函数功能

    将buffer中的数据按照format格式读取后存储在argument中,返回值表示为成功转换的的数据个数,如果在第一次转换之前候遇到文件结尾就返回EOF。

    实例一

    #include<stdio.h>
    int main()
    {
        char *buffer = "asdfg10112022";
        char *temp1[10];
        char *temp2[20];
        sscanf(buffer,"%[a-zA-Z]%[1-9]",temp1,temp2);
        printf("%s
    %s
    ",temp1,temp2);
        printf("%d
    ",sscanf(buffer,%[a-zA-Z]%[1-9]));
        return 0;
    }
    

    sscanf一般的用法

    1. 常见用法。

    charbuf[512];
    sscanf("123456","%s",buf);//此处buf是数组名,它的意思是将123456以%s的形式存入buf中
    printf("%s
    ",buf);//123456
    

    2. 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。

    sscanf("123456","%4s",buf);
    printf("%s
    ",buf);//1234
    

    3. 取到指定字符为止的字符串。如在下例中,取遇到空格为止字符串。

    sscanf("123456abcd  edf","%[^ ]",buf);
    printf("%s
    ",buf);//123456abcd 
    

    4. 取仅包含指定字符集的字符串。如在下例中,取仅包含1到9和小写字母的字符串。

    sscanf("123456abcdedfBCDEF","%[1-9a-z]",buf);
    printf("%s
    ",buf);//123456abcded
    

    5. 取到指定字符集为止的字符串。如在下例中,取遇到大写字母为止的字符串。

    sscanf("123456abcdedfBCDEF","%[^A-Z]",buf);
    printf("%s
    ",buf);//sscanf("123456abcdedfBCDEF","%[^A-Z]",buf);
    printf("%s
    ",buf);
    

    6、给定一个字符串iios/12DDWDFF@122,获取 / 和 @ 之间的字符串。

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

    7、给定一个字符串“hello, world”,仅保留world。

    sscanf(“hello, world”,"%*s%s",buf);/%s遇空格停止,加*则是忽略第一个读到的字符串。
    printf("%s
    ",buf);//word
    
  • 相关阅读:
    Java实现 洛谷 P1009 阶乘之和
    Java实现 洛谷 P1009 阶乘之和
    mysql8.0 安装 修改密码 允许远程连接
    Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/vm10-0-0-19
    优秀c++开源项目集合
    可能是国内最火的开源项目 —— C/C++ 篇
    CodeBlocks环境搭建及创建第一个C++程序
    手动安装MySQL8.0
    【Linux】CentOS 7.4 安装 MySQL 8.0.12 解压版
    CentOS7下安装mysql5.7
  • 原文地址:https://www.cnblogs.com/shuimojun/p/3808950.html
Copyright © 2011-2022 走看看