sstream头文件

sstream头文件之前的sscanf和sprintfsscanf函数原型为intsscanf(constchar*str,constchar*format,…),将参数str的字符串根据参数format字符串来转换并格式化数据,转换后的结果存于对应的参数内;#include<iostream>#include<cstdio>usingnamespacestd;i…

大家好,又见面了,我是你们的朋友全栈君。

之前的sscanf和sprintf
sscanf函数原型为int sscanf(const char *str,const char *format,…),将参数str的字符串根据参数format字符串来转换并格式化数据,转换后的结果存于对应的参数内;

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

int main(){ 
   
	char s[] = "123.432,432";
	double f1;
	int f2;
	int n;
	sscanf_s(s, "%lf,%d%n", &f1, &f2, &n);
	cout << f1 << " " << f2 << " " << n << endl;

	system("pause");
	return 0;
}

sstream头文件
sprintf函数原型为 int sprintf(char *str, const char *format, …),作用是格式化字符串;

void sprintf() { 
   
	char str[256] = { 
    0 };
	int data = 1024;
	//将data转换为字符串
	sprintf_s(str, "%d", data);
	cout << str << endl;

	//获取data的十六进制
	sprintf_s(str, "0x%X", data);
	cout << str << endl;

	//获取data的八进制
	sprintf_s(str, "0%o", data);
	cout << str << endl;

	const char *s1 = "Hello";
	const char *s2 = "World";
	//连接字符串s1和s2
	sprintf_s(str, "%s %s", s1, s2);
	cout << str << endl;
}

sstream头文件
sstream
sstream定义了三个类:istringstream、ostringstream 和 stringstream,分别用来进行流的输入、输出和输入输出操作

  • 可以将内容写入其中,和cout一样
stringstream ss;
    double price = 380.0;
    char *ps = " for a copy of the ISO/EIC C++ standard!";
    ss.precision(2);//精度
    ss << fixed;//固定位数
    ss << "Pay only CHF " << price << ps << endl;
    cout << ss.str() << endl;//将缓冲区的内容转化为字符串
  • 它可以拼接字符串(不同数据类型)
  • 可以从中读取数据,和cin一样:
string word;
while(ss>>word){ 
   
    cout << word << endl;
    }
  • 利用stringstream可以轻松完成字符串和基本数据类型的相互转换
	string s = "12345";
	stringstream ss;
	int x;
	ss << s;
	ss >> x;
	cout << x << endl;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136123.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • web安全(入门篇)

    web安全的概念太过于宽泛,博主自知了解的并不多,还需要继续学习。但是又想给今天的学习进行总结,所以今天特分享一篇关于web安全的文章,希望对初次遇到web安全问题的同学提供帮助。SQL注入数据库表出现场景当开发登录模块的时候,如果我们使用是mysql操作php,并非使用mysqli、PDO等;当查询用户是否存在的SQL是这样写的,select*fromuserwherename=

    2022年4月5日
    37
  • 2022年流动式起重机司机考试题库模拟考试平台操作「建议收藏」

    2022年流动式起重机司机考试题库模拟考试平台操作「建议收藏」题库来源:安全生产模拟考试一点通公众号小程序2022年流动式起重机司机特种作业证考试题库系流动式起重机司机考题的多种练习模式!2022年流动式起重机司机考试题库模拟考试平台操作根据流动式起重机司机考前押题。流动式起重机司机全部考试题库通过安全生产模拟考试一点通上错题练习。1、【多选题】《中华人民共和国特种设备安全法》规定,特种设备生产、经营、使用单位()被查封、扣押的特种设备或者其主要部件的,责令改正,处五万元以上二十万元以下罚款;情节严重的,吊销生产许可证,注销特种设备使用登记证书。(A..

    2022年9月6日
    2
  • MySQL 数据库基础知识(系统化一篇入门)[通俗易懂]

    MySQL 数据库基础知识(系统化一篇入门)[通俗易懂]一、数据库简述1.1、数据库概述数据库:DB(DataBase)概念:数据仓库,软件,安装在操作系统之上作用:存储数据,管理数据1.2、数据库分类关系型数据库:SQL(StructuredQueryLanguage)MySQL、Oracle、SqlServer、DB2、SQLlite通过表和表之间,行和列之间的关系进行数据的存储通过外键关联来建立表与表之间的关系非关系型数据库:NoSQL(NotOnlySQL)Redis、…

    2022年6月26日
    25
  • sublime text 3下载与安装详细教程「建议收藏」

    sublime text 3下载与安装详细教程「建议收藏」一、下载:打开官网下载链接http://www.sublimetext.com/3,下载SublimeText3portableversion”下载下来为“SublimeTextBuild3083x64.zip”编辑器的包,解压后无需安装就能运行,直接创建桌面快捷键就好二、双击桌面“SublimeText3”快捷图标,打开程序,就可…

    2022年7月11日
    50
  • java保留两位小数输出,看这篇文章准没错!

    java保留两位小数输出,看这篇文章准没错!4年经验应该具备哪些技能首先,简单的聊一下我认为的4年经验左右、优秀的Java程序员应该具备的技能有哪些,按“专业技能”和“项目”两块,包括但不限于以下内容。专业技能方面基础:JDK常用类的原理、源码、使用场景。设计模式:常用几种的原理、使用场景,单例、动态代理、模板、责任链等。数据结构:数组、链表、栈、队列、树。网络:TCP、HTTP、HTTPS、负载均衡算法。框架:SpringIoC原理、SpringAOP原理和使用、Spring常用的扩展点、MyBatis的核心

    2022年7月8日
    32
  • 百家讲坛2001-2016年节目播出表-总目录「建议收藏」

    百家讲坛2001-2016年节目播出表-总目录「建议收藏」百家讲坛2001-2016年节目播出表-总目录            (2001.07.09—2016.1.14)    日期    节目内容    主讲人2001-7-9    美与物理学    杨振宁2001-7-10    实验物理与物理学前沿    丁肇中2001-7-11    唐宋咏春诗赏析    程郁缀2001-7-12    泰山美学    杨辛

    2022年4月29日
    111

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号