数字和字符串的相互转化

一、使用C++中stringstream字符流、string字符类

1.数字转字符串 

#include
#include
#include
using namespace std;
int main()
{
	double a=123.321;
	//int a=123;
	string res;
	stringstream ss;
	ss<>res;//或者 res=ss.str();
	cout<

数字和字符串的相互转化_第1张图片

2.字符串转数字


#include
#include
#include
using namespace std;
int main()
{
	string str="456.654";
	double num;
	stringstream ss;
	ss<>num;
	cout<

数字和字符串的相互转化_第2张图片

二、C语言中的sprintf,sscanf函数

1.数字转字符串 

#include
int main()
{
	char str[20]; 
	//整型数转字符串 
	int a=1234321;
	sprintf(str,"%d",a);
	printf("%s\n",str);
	
	//浮点数转字符串,可以控制浮点数位数 
	double b=123.321;
	sprintf(str,"%.2lf",b);
	printf("%s\n",str);
	
	//十进制数转16进制 
	int x=175;
	sprintf(str,"%x",x);//输出小写字母
	printf("%s\n",str); 
	
	sprintf(str,"%X",x);//输出大写字母 
	printf("%s\n",str);
	return 0; 
}

数字和字符串的相互转化_第3张图片

2.字符串转数字 

#include
int main()
{

	//字符串转整型数
	char sa[]="123321";
	int a;
	sscanf(sa,"%d",&a);
	printf("%d\n",a);
	
	
	//字符串转浮点数,可以控制浮点数位数 
	char sb[]="456.654";
	double b;
	sscanf(sb,"%lf",&b);
	printf("%.2lf\n",b);

	
	//16进制转十进制数
	char str[]="AF";
	int x;
	sscanf(str,"%x",&x);
	printf("%x\n",x);//输出小写字母
	
	sscanf(str,"%X",&x); 
	printf("%X\n",x);//输出大写字母 

	return 0; 
}
数字和字符串的相互转化_第4张图片

你可能感兴趣的:(C/C++基础知识)