1、取绝对值
1.1<math>abs
原型:int abs(int _X);
功能:求整数的绝对值
头文件:math
1.2<math>fabs
原型:long double fabs(long double _X);
float fabs(float _X);
功能:求浮点数的绝对值
2、数值和字符串转换
2.1<stdlib.h>strtol
原型:long strtol(const char * _Str, char ** _EndPtr, int _Radix );
功能:将字符串_Str按照进制_Radix转换成长整型。
2.2<stdlib.h>strtoul
原型:unsigned long strtoul(char * _Str, char ** _EndPtr, int _Radix);
功能:将字符串_Str按照进制_Radix转换成无符号长整型
2.3<stdlib.h>strtod
原型:double strtod(const char * _Str, char ** _EndPtr);
功能:将字符串转为浮点数。若_EndPtr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由
_EndPtr传回。
2.4<stdlib.h>_itoa_s
原型:errno_t _itoa_s(int _Value, char * _DstBuf, size_t _Size, int _Radix);
errno_t _itoa_s(int _Value, char(&_Dest)[_Size], int _Radix);
功能:将数值转换成字符串
#include <iostream>
#include <string>
int main()
{
int iNum1 = 0x10;
char cBuffer1[64];
_itoa_s(iNum1, cBuffer1, 16, 16);
std::string strNum1(cBuffer1);
return 0;
}
2.5<sstream>stringstream
功能:数值和字符串转换
/*字符串转换成数值*/
#include <iostream>
#include <string>
#include <sstream>
int main()
{
std::string str1 = "123";
std::stringstream ss1(str1);
int num1;
ss1>>num1;
return 0;
}
/*数值转换成字符串*/
#include <iostream>
#include <string>
#include <sstream>
int main()
{
int num2 = 123;
std::stringstream ss2;
ss2<<num2;
std::string str2 = ss2.str();
return 0;
}
2.6<stdio.h>sprintf_s
原型:int sprintf_s(_Out_z_bytecap_(_SizeInBytes) char * _DstBuf, _In_ size_t _SizeInBytes,
_In_z_ _Printf_format_string_ const char * _Format, ...);
功能:将数值输出到一个char数组中
#include <iostream>
#include <string>
int main()
{
int iNum = 0x12;
char cTemp1[64];
sprintf_s(cTemp1, 64, "%x", iNum);
std::string strNum1(cTemp1);
return 0;
}
#include <iostream>
#include <string>
int main()
{
int iNum1 = 0x10;
char cBuffer1[64];
_itoa_s(iNum1, cBuffer1, 16, 16);
std::string strNum1(cBuffer1);
return 0;
}
/*字符串转换成数值*/
#include <iostream>
#include <string>
#include <sstream>
int main()
{
std::string str1 = "123";
std::stringstream ss1(str1);
int num1;
ss1>>num1;
return 0;
}
/*数值转换成字符串*/
#include <iostream>
#include <string>
#include <sstream>
int main()
{
int num2 = 123;
std::stringstream ss2;
ss2<<num2;
std::string str2 = ss2.str();
return 0;
}
#include <iostream>
#include <string>
int main()
{
int iNum = 0x12;
char cTemp1[64];
sprintf_s(cTemp1, 64, "%x", iNum);
std::string strNum1(cTemp1);
return 0;
}