C语言---整型、浮点型数字与字符串的相互转换(1)

整型、浮点型数字转化为字符串

一:整型转字符串:

1.int转化为字符串

使用库函数_itoa_s

_itoa_s(int _Value, char *_Buffer, size_t _BufferCount, int _Radix);

_Value:是要转换的数字; 

_Buffer:存储结果的字符串

_Radix:表示进制,若十进制则Radix为10

_BufferCount:表示存储的大小,必须小于等于Buffer大小

 示例如下:

C语言---整型、浮点型数字与字符串的相互转换(1)

 

2. long int转为字符串 

_ltoa_s(long _Value, char *_Buffer, size_t _BufferCount, int _Radix);

C语言---整型、浮点型数字与字符串的相互转换(1) 

 

 

3. unsigned long int 转为字符串

_ultoa_s(unsigned long _Value, char *_Buffer, size_t _BufferCount, int _Radix);

C语言---整型、浮点型数字与字符串的相互转换(1)

 

 二:浮点型转字符串:

 1. gcvt():将浮点型数转换为字符串,取四舍五入,结果中保留了小数点。

errno_t  _gcvt_s( char *buffer, size_t sizeInBytes, double value, int digits );

buffer: 用于存储转换的结果缓冲区

sizeInBytes: 存储结果字符串缓冲区

 value 要转换的值

digits :存储的有效数字个数(有效数字第一个不为0的数开始,不算小数点)

 C语言---整型、浮点型数字与字符串的相互转换(1)

具体参考:https://docs.microsoft.com/zh-cn/cpp/c-runtime-library/reference/gcvt-s?view=msvc-170C语言---整型、浮点型数字与字符串的相互转换(1)https://docs.microsoft.com/zh-cn/cpp/c-runtime-library/reference/gcvt-s?view=msvc-170  2.ecvt():将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点,同样进行四舍五入。

errno_t _ecvt_s(char * _Buffer,size_t _SizeInBytes,double _Value, 
int _Count, int *_Dec,int *_Sign);

(输出)_Buffer:使用指针加载对数字字符串,转换的结果

(输入)_SizeInBytes: 存储结果字符串缓冲区

(输入)_Value:将转换的数字。

 (输入)_Count:存储的位数。

(输出)_Dec:存储小数点的索引位置。

(输出)_Sign:数值转换为字符串后正负号丢失,需要_Sign来记录原始数值的符号(0为正,1为-)

示例:

C语言---整型、浮点型数字与字符串的相互转换(1)

注意输入和输出参数,具体参考:https://docs.microsoft.com/zh-cn/previous-versions/ehz2dset(v=vs.110)?redirectedfrom=MSDNC语言---整型、浮点型数字与字符串的相互转换(1)https://docs.microsoft.com/zh-cn/previous-versions/ehz2dset(v=vs.110)?redirectedfrom=MSDN

 

 

上一篇:Java NIO Channel 使用


下一篇:发生java.lang.OutOfMemoryError: Direct buffer memory【转】