专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

sscanf函数用法,C语言中sscanf函数6种用法详解

来源:小嗨整编  作者:小嗨  发布时间:2023-03-22 02:17
摘要:sscanf函数用法,C语言中sscanf函数6种用法详解sscanf()函数实现:不管接触过任何编程语言也好,学过正则表达式的都对sscanf()的使用并不陌生了。如何通过sscanf将已知的字符串通过格式化匹配出有效的信息?下面我把要实...

sscanf函数用法,C语言中sscanf函数6种用法详解

sscanf()函数实现:

不管接触过任何编程语言也好,学过正则表达式的都对sscanf()的使用并不陌生了。如何通过sscanf将已知的字符串通过格式化匹配出有效的信息?下面我把要实现对象的方法和作用意义给列出来,如下所示:

格式

作用

%*s或%*d

跳过数据

%[width]s

读指定宽度的数据

%[a-z]

匹配a到z中任意字符(尽可能多的匹配)

%[aBc]

匹配a、B、c中一员,贪婪性

%[^a]

匹配非a的任意字符,贪婪性

%[^a-z]

表示读取除a-z以外的所有字符

以上有六种方法,每种方法都来实现以下:

函数原型为:int sscanf(const char *const_Buffer, const char*const _Format, ...)

作用:从一个字符串中读进与指定格式相符的数据的函数

第1种方法:

利用%*s或%*d的格式实现跳过数据:

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="666helloworld";char temp1[128]={0};sscanf(str1,"%*d%s", temp1);printf("%s\n", temp1);// 得到的是helloworldprintf("---------------\n");char* str2 ="helloworld666";char temp2[128]={0};sscanf(str2,"%*[a-z]%s", temp2);printf("%s\n", temp2);// 得到的是666}intmain(){test();system("pause");return0;}

结果图为:


图片


第2种方法:

通过%[width]s格式进行读指定宽度的数据:

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="666helloworld";char temp1[128]={0};sscanf(str1,"%8s", temp1);printf("%s\n", temp1);// 得到的是666hello}intmain(){test();system("pause");return0;}

第3种方法:

通过%[a-z]格式进行匹配a到z中任意字符(尽可能多的匹配):

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="666helloworld";char temp1[128]={0};sscanf(str1,"%*d%[a-z]", temp1);printf("%s\n", temp1);// 得到的是helloworld}intmain(){test();system("pause");return0;}

第4种方法:

通过%[aBc]格式进行匹配a、B、c中的一员,贪婪性正则表达式

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="abccabchelloworld";char temp1[128]={0};sscanf(str1,"%[abc]", temp1);//  如果刚开始就遇到匹配失败,后续则不再匹配printf("%s\n", temp1);// 得到的是abccabc}intmain(){test();system("pause");return0;}

第5种方法:

通过方法: %[^a]格式进行匹配非a的任意字符,也属于贪婪性正则表表达式

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="abccabchelloworld";char temp1[128]={0};sscanf(str1,"%[^c]", temp1);//  如果匹配到字符,则字符后面的不在进行匹配printf("%s\n", temp1);// 得到的是ab}intmain(){test();system("pause");return0;}

第6种方法:

通过%[^a-z]格式,进行匹配读取除a-z以外的所有字符

代码如下所示:

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>voidtest(){char* str1 ="hello52wo3rld";char temp1[128]={0};sscanf(str1,"%[^0-9]", temp1);//  如果匹配到字符,则字符后面的不在进行匹配printf("%s\n", temp1);// 得到的是hello}intmain(){test();system("pause");return0;}



本文地址:软件教程频道 https://www.eeeoo.cn/ruanjian/936152.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


软件教程
小编:小嗨整编
相关文章相关阅读
  • 我的世界不死图腾获取方式(我的世界不死图腾用法)

    我的世界不死图腾获取方式(我的世界不死图腾用法)

    我的世界不死图腾获取方式(我的世界不死图腾用法)我的世界不死图腾由召唤师掉落,使用林中鬼屋藏宝图找到林中鬼屋,然后进入林中鬼屋的房间里击杀召唤师才能获得。不过不死图腾的掉落率比较低,需要击杀许多召唤师才能获得。我的世界不死图腾用法移除玩家身...

  • 魔兽世界字体设置在哪(魔兽世界字体设置方法详解)?

    魔兽世界字体设置在哪(魔兽世界字体设置方法详解)?

    魔兽世界字体设置在哪(魔兽世界字体设置方法详解)?在魔兽世界这款备受喜爱的大型多人在线角色扮演游戏中,玩家们可以通过各种方式来打造属于自己的独特风格,改变字体就是一种简单有效的方法,本文将详细介绍如何在魔兽世界中修改字体,让你的游戏体验更具...

  • dnf鬼泣技能详解(dnf鬼泣自带暗属性吗)?

    dnf鬼泣技能详解(dnf鬼泣自带暗属性吗)?

    dnf鬼泣技能详解(dnf鬼泣自带暗属性吗)?“鬼泣”是目前dnf手游中较为全面的一个角色,可做主力输出也可以当辅助职业。自带暗属性伤害,打造成本低,整体操作手感丝滑,范围大爆发的同时兼顾持续输出,相比起狂战士那种“莽夫型”职业,“鬼泣”的...

  • 王者荣耀鬼谷子教学(王者荣耀鬼谷子技能详解)

    王者荣耀鬼谷子教学(王者荣耀鬼谷子技能详解)

    王者荣耀鬼谷子教学(王者荣耀鬼谷子技能详解)王者荣耀的鬼谷子是一个具有强大辅助能力的英雄。他的技能机制独特,可以在战斗中起到至关重要的作用。并且凭借着隐身控制效果获得了许多玩家的喜爱,下面带来王者荣耀鬼谷子的教学及技能详解。王者荣耀鬼谷子的...

  • ones刻录软件的用法(ones刻录软件怎么刻录数据光盘)?

    ones刻录软件的用法(ones刻录软件怎么刻录数据光盘)?

    ones刻录软件的用法(ones刻录软件怎么刻录数据光盘)?ones刻录软件是一款专业的光盘刻录软件,不仅软件体积小巧、占用内存少,操作简单便捷,而且ones光盘刻录软件功能全面,用户可以通过软件刻录多种格式的文件,轻松上手操作,为用户带来...

  • 王者荣耀盘古连招技巧详解(王者荣耀盘古最强出装)

    王者荣耀盘古连招技巧详解(王者荣耀盘古最强出装)

    王者荣耀盘古连招技巧详解(王者荣耀盘古被谁克制)?王者荣耀里的盘古其独特的缴械机制能够有效地克制依赖普攻输出的英雄。盘古的技能包含了位移、击退、减速、缴械、回复、眩晕等多种机制,使其在战场上拥有非常全面的表现。下面带来王者荣耀盘古的连招技巧...

  • 魔兽世界gm命令大全详解(魔兽世界gm命令怎么用)?

    魔兽世界gm命令大全详解(魔兽世界gm命令怎么用)?

    魔兽世界gm命令大全详解(魔兽世界gm命令怎么用)?在魔兽世界中,GM命令主要用于管理游戏内的各种资源和玩家行为,通过这些命令,GM可以查询玩家的信息、调整游戏世界的设定、处理游戏内的问题等。魔兽世界gm命令怎么用答:按~打开控制台,输入对...

  • 办公软件快捷键大全表(办公软件函数公式大全)

    办公软件快捷键大全表(办公软件函数公式大全)

    办公软件快捷键大全表(办公软件函数公式大全)办公软件快捷键大全表1.Alt系列2.Ctrl+数字3.Ctrl+Shift4.Shift系列办公软件函数公式大全1、Ctrl+字母Ctrl+A全选Ctrl+P打印Ctrl+C复制Ctrl+V粘贴...

  • 周排行
  • 月排行
  • 年排行

精彩推荐