C语言sscanf用法解析与正则表达式支持

最近学习算法和输入输出用到的基本知识,首先是我自己写的一份代码参考和学习了很多资源

后面会给出参考资料,他们写得更加详细,正则表达式的支持确实是一大亮点所在

#include<iostream>
#include<string>
#include<cstdio>
using namespace std;

//字符与其他类型转换函数学习

int main()
{
    //打印到字符串中
    cout << "打印到字符串中的技巧\n";
    char s[100];
    sprintf(s, "%d", 123);//整数转为字符
    cout << s << endl;
    sprintf(s, "%5d %5d", 123,46578);//格式控制,左对齐
    cout << s << endl;
    sprintf(s, "%-5d %-5d", 123, 46578);//格式控制,右对齐
    cout << s << endl;
    sprintf(s, "%8x", 14567);//16进制打印
    cout << s << endl;
    cout << "从字符串中读取与指定格式相符的数据\n";
    //字符串转换为数字
    int N;
    char s0[100] = "0123456";
    sscanf(s0, "%d", &N);//前导0会被过滤
    cout << N << endl;
    sscanf(s0, "%2d", &N);//按位取宽,01-->1
    cout << N << endl;
    char s1[200];
    sscanf("123456", "%s", s1);
    cout << s1<< endl;
    sscanf("123456abcd", "%[^b]", s1);//取到指定字符为止
    cout << s1 << endl;
    sscanf("123abEFac", "%[^A-Z]", s1);//取到大写字符为止
    cout << s1 << endl;
    string s3 = s1;
    cout << s3;
    return 0;
}

参考资料:

C++中string、char *、char[]的转换

https://www.cnblogs.com/Pillar/p/4206452.html

sscanf函数用法举例

http://www.cnblogs.com/zhuangwei/p/5296219.html

原文地址:https://www.cnblogs.com/hxh88/p/9316135.html

时间: 2024-10-29 14:04:39

C语言sscanf用法解析与正则表达式支持的相关文章

C语言 sscanf用法详解

/* sscanf用法详解 */ #include <stdio.h> /* sscanf头文件 */ #include <stdlib.h> #include <string.h> /* sscanf 读取格式化的字符串中的数据. swscanf 是 sscanf 的宽字符版本:swscanf 的参数是宽字符串. swscanf不处理 Unicode 全角十六进制或"兼容性区"字符. 除此以外,swscanf 和 sscanf 的行为完全相同. 函

extern &quot;c&quot;用法解析

转自: extern "c"用法解析 - 简书 引言 C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同.extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码.加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的.由于C++支持函数重载,因此编译器编译函

extern &quot;C&quot; 用法解析

extern "c"用法解析 作者 作者Jason Ding ,链接http://www.jianshu.com/p/5d2eeeb93590 引言 C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同.extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码.加上extern "C"后,会

C/C++之extern &quot;C&quot;的用法解析

extern "C"的用法解析 http://blog.sina.com.cn/u/494a1ebc010004g5 C++中extern “C”含义深层探索 1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同.作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语

标准SQL语言的用法

原文链接:http://www.ifyao.com/2015/05/18/%E6%A0%87%E5%87%86%E7%9A%84sql%E8%AF%AD%E8%A8%80%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E5%8F%8A%E5%A4%9A%E8%A1%A8%E8%BF%9E%E6%8E%A5/ 标准SQL语言的用法 SQL语言是目前最通用的关系数据库语言.ANSI SQL是指由美国国家标准局(ANSI)的数据库委员会制定的标准SQL语言,多数关系数据库产品

sql中的group by 和 having 用法解析

--sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select DepartmentID as '部门名称',COUNT(*) a

mybatis源码追踪1——Mapper方法用法解析

Mapper中的方法执行时会构造为org.apache.ibatis.binding.MapperMethod$MethodSignature对象,从该类源码中可以了解如何使用Mapper方法. [支持的特殊参数类型] RowBounds.ResultHandler.普通参数 (作为sql执行时使用的变量) 其中普通参数可以是单一的model.查询条件的map或直接将一到多个查询条件作为参数(多个条件在框架中最终将封装为map使用) 另外普通参数支持添加@Param注解以修改参数名,如不修改则参

转载 sql中的group by 和 having 用法解析

sql中的group by 和 having 用法解析 --sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select Depar

sql中group by 和having 用法解析

--sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select DepartmentID as '部门名称',COUNT(*) a