_itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
来源:互联网 发布:php中文手册 下载 编辑:程序博客网 时间:2024/05/19 18:37
atoi、atof、_itoa、_itow 函数使用
atoi、atof、itoa、itow函数是windows平台下实现字符串与数值相互转换的函数。Linux平台下请使用标准库中的sprintf与sscanf函数。
atoi函数
原型:int atoi( const char *string );
ASCII to integer
作用:将字符串转为integer类型
atof函数
原型:double atof( const char *string );
ASCII to float
作用:将字符串转为double类型
对于以上函数,若字符串无法转化为合法的数值类型,函数将返回0 。
#include <stdlib.h>2#include <stdio.h>34void main( void )5{6 char *s; double x; int i; long l;78 printf( " testing atoi,atof,atol function :\n" ) ;9 s = " -2309.12E-15"; /* Test of atof */10 x = atof( s );11 printf( "atof test: ASCII string: %s\tfloat: %e\n", s, x );1213 s = "7.8912654773d210"; /* Test of atof */14 x = atof( s );15 printf( "atof test: ASCII string: %s\tfloat: %e\n", s, x );1617 s = " -9885 pigs"; /* Test of atoi */18 i = atoi( s );19 printf( "atoi test: ASCII string: %s\t\tinteger: %d\n", s, i );2021 s = "98854 dollars"; /* Test of atol */22 l = atol( s );23 printf( "atol test: ASCII string: %s\t\tlong: %ld\n", s, l );24}25
输出:
atof test: ASCII string: -2309.12E-15 float: -2.309120e-012
atof test: ASCII string: 7.8912654773d210 float: 7.891265e+210
atoi test: ASCII string: -9885 pigs integer: -9885
atol test: ASCII string: 98854 dollars long: 98854
_itoa函数
原型:char *_itoa( int value, char *str, int radix );//2<=radix<=36
Integer to ASCII
作用:将Integer类型转换为radix进制,然后以ASCII字符串的形式存放在str中
_itow函数
wchar_t * _itow( int value, wchar_t *str, int radix );//2<=radix<=36
Integer to Wide Char
作用:将Integer类型转换为radix进制,然后以宽字符串的形式存放在str中
以上2个函数均有安全隐患(当字符数组长度不足保存结果时会导致缓冲区溢出),在vs2008中编译时会有警告。推荐使用它们的安全版本—— _itoa_s与_itow_s 。
_itoa_s 函数原型如下:
errno_t _itoa_s(
int value,
char *buffer,
size_t sizeInCharacters, //存放结果的字符数组长度
int radix
);
当转换的结果长度比sizeInCharacters变量大时,由于出现access violation,函数将马上终止,而_itoa函数将继续运行。
输出:base 10: -1 (2 chars)base 9: 12068657453 (11 chars)base 8: 37777777777 (11 chars)base 7: 211301422353 (12 chars)base 6: 1550104015503 (13 chars)base 5: 32244002423140 (14 chars)base 4: 3333333333333333 (16 chars)base 3: 102002022201221111210 (21 chars)base 2: 11111111111111111111111111111111 (32 chars) base 10: -1 (2 chars)base 9: 12068657453 (11 chars)base 8: 37777777777 (11 chars)base 7: 211301422353 (12 chars)base 6: 1550104015503 (13 chars)base 5: 32244002423140 (14 chars)base 4: 3333333333333333 (16 chars)base 3: 102002022201221111210 (21 chars)base 2: 11111111111111111111111111111111 (32 chars)
_itoa
功能:把一整数转换为字符串
用法:char * _itoa(int value, char *string, int radix);
详细解释: _itoa是英文integer to array(将int整型数转化为一个字符串,并将值保存在数组string中)的缩写.其中value为要转化的整数, radix是基数的意思,即先将value转化为radix进制的数,之后再保存在string中.
备注:该函数的头文件是"stdlib.h"
程序例:
#include <stdlib.h>
#include <stdio.h>
int main()
{
int number = 123456;
char string[25];
_itoa(number, string, 10);
printf("integer = %d string = %s\n", number, string);
return 0;
}
注释:编译系统:VC++6.0,TC不支持。
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- C++中,int和char互转函数_itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- atoi、atof、itoa、itow函数简介
- C++ 类型转换 atoi atol atof itoa ftoa <stdlib.h>
- C++ 类型转换 atoi atol atof <stdlib.h>, itoa ftoa char <---> string
- 关于转换的问题,平时用到一些 内置类型之间的 转换方法如atoi atof itoa sprintf 等 istrstream ostrstream strstream【2013.10.21】
- atof(),atoi(),itoa(),sprintf()等用法总结
- C语言实现atoi,itoa和atof
- 标准库函数itoa,atoi,atol,atof
- 学习篇---自定义SlidingMenu
- HTML basic interview questions
- ruby Errors & Exceptions
- 如何选择开源项目?
- 【图解HTTP笔记】第五章 与HTTP协作的Web服务器
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- Flex实现环绕布局
- 教你如何正确反编译apk
- leetcode 205. Isomorphic Strings-字符匹配|哈希表
- 专题三 Problem A
- JDK环境变量配置
- MySQL 数据库性能优化之表结构优化
- java--Map集合常见遍历格式代码
- 数字图像处理之一 对图像进行傅立叶变换