itoa函数和atoi函数的实现和用法
itoa函数和atoi函数的用法
C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。以下是用itoa()函数将整数转 换为字符串的一个例子:
# include <stdio.h>
# include <stdlib.h>
void main (void)
{
int num = 100;
char str[25];
itoa(num, str, 10);
printf("The number 'num' is %d and the string 'str' is %s. \n" ,num, str);
}
itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是要写入转换结果的目标字符串,第三个参数是转移数字时所用的基数。在上例中,转换基数为10。10:十进制;2:二进制... itoa并不是一个标准的C函数,它是Windows特有的,如果要写跨平台的程序,请用sprintf。
是Windows平台下扩展的,标准库中有sprintf,功能比这个更强,用法跟printf类似:
char str[255];
sprintf(str, "%x", 100); //将100转为16进制表示的字符串。
下列函数可以将整数转换为字符串:
----------------------------------------------------------
函数名 作 用
----------------------------------------------------------
itoa() 将整型值转换为字符串
itoa() 将长整型值转换为字符串
ultoa() 将无符号长整型值转换为字符串一 atoi 把字符串转换成整型数例程序:#include <ctype.h>
#include <stdio.h>
int atoi (char s[]);
int main(void )
{ char s[100];gets(s);printf("integer=%d\n",atoi(s));
return 0;
}
int atoi (char s[])
{
int i,n,sign;for(i=0;isspace(s[i]);i++)//跳过空白符
;
sign=(s[i]=='-')?-1:1;
if(s[i]=='+'||s[i]==' -')//跳过符号
i++;
for(n=0;isdigit(s[i]);i++)
n=10*n+(s[i]-'0');//将数字字符转换成整形数字
return sign *n;}二 itoa 把一整数转换为字符串例程序:#include <ctype.h>
#include <stdio.h>
void itoa (int n,char s[]);
//atoi 函数:将s转换为整形数
int main(void )
{
int n;
char s[100];printf("Input n:\n");
scanf("%d",&n); printf("the string : \n");
itoa (n,s);
return 0;
}
void itoa (int n,char s[])
{
int i,j,sign;if((sign=n)<0)//记录符号
n=-n;//使n成为正数
i=0;
do{
s[i++]=n%10+'0';//取下一个数字
}while ((n/=10)>0);//删除该数字if(sign<0)
s[i++]='-';
s[i]='\0';
for(j=i;j>=0;j--)//生成的数字是逆序的,所以要逆序输出
printf("%c",s[j]);
}
-------------------------------------------------------------- atoi, atol, atoll, atoq -- convert a string to an integer
相关函数: atof, atol, atrtod, strtol, strtoul
表头文件: #include <stdlib.h>
定义函数: int atoi(const char *nptr);
函数说明: atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0‘)才结束转换,并将结果返回。
返回值: 返回转换后的整型数。
附加说明: atoi(nptr)与strtol(nptr, (char**)NULL, 10)结果相同
#include <stdlib.h>
#include <stdio.h>
main() {
char *a = "-100";
char *b = "456";
int c;
c = atoi(a) + atoi(b); //356
printf("c = %d\n", c);
}
**************************************************************************
From:http://topic.csdn.net/t/20000908/13/29021.html
itoa,下面是例子
#include <stdlib.h>
#include <stdio.h>
void main( void )
{
char buffer[20];
int i = 3445;
long l = -344115L;
unsigned long ul = 1234567890UL;
_itoa( i, buffer, 10 );
printf( "String of integer %d (radix 10): %s\n", i, buffer );
_itoa( i, buffer, 16 );
printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );
_itoa( i, buffer, 2 );
printf( "String of integer %d (radix 2): %s\n", i, buffer );
_ltoa( l, buffer, 16 );
printf( "String of long int %ld (radix 16): 0x%s\n", l,
buffer );
_ultoa( ul, buffer, 16 );
printf( "String of unsigned long %lu (radix 16): 0x%s\n", ul,
buffer );
}
Output
String of integer 3445 (radix 10): 3445
String of integer 3445 (radix 16): 0xd75
String of integer 3445 (radix 2): 110101110101
String of long int -344115 (radix 16): 0xfffabfcd
String of unsigned long 1234567890 (radix 16): 0x499602d2
itoa函数和atoi函数的实现和用法相关推荐
- C语言 itoa函数及atoi函数
C语言 itoa函数及atoi函数 itoa函数及atoi函数 2007-05-11 13:52 C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串.以下是用ito ...
- 自己用C语言写itoa 函数和atoi函数
有些库中有atoi()函数,但没有itoa()函数,怎么办?自己写啊!!! 一:先来看看库atoi()函数和itoa()函数的用法: 1.atoi 是把字符串转换成整型数的一个函数,int atoi( ...
- itoa函数和atoi函数
itoa是广泛应用的非标准C语言扩展函数.由于它不是标准C语言函数,所以不能在所有的编译器中使用.但是,大多数的编译器(如Windows上的)通常在<stdlib.h>头文件中包含这个函数 ...
- itoa()函数与atoi()函数
目录 1.itoa()函数(整型转字符) 2.atoi()函数(字符转整型) 1.itoa()函数(整型转字符) 以下是用itoa()函数将整数转换为字符串的一个例子: # include <s ...
- C语言itoa()函数和atoi()函数详解(整数转字符C实现)
C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长 ...
- 【C语言】 itoa()函数 和 atoi()函数(字符串与整型数的转换)
文章目录 一.atoi()函数 二.itoa()函数 三.利用atoi() 和itoa()函数进行进制转换 一.atoi()函数 atoi()是C语言中的字符串转换成整型数的一个函数 (1)[头文件] ...
- 【C++】之 iota() 函数与 atoi() 函数详解
参考: https://blog.csdn.net/lixiaogang_theanswer/article/details/72588105 http://c.biancheng.net/view/ ...
- itoa函数,srpintf()函数 ,atoi函数
itoa()函数 *itoa()原型: char *itoa( int value, char string,int radix); 原型说明: 输入参数: value:要转换的数据. string: ...
- itoa()函数和atoi()函数详解
C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 以下是用itoa()函数将整数转换为字符串的一个例子: # include <stdio.h> # ...
最新文章
- Linux ext2文件系统小结
- 1. C语言中只能使用单行注释,贵州大学C语言判断题
- html运行代码出现问号乱码_Java 0基础入门(初识Html)
- (转)Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别
- SAP C4C url mashup跳转原理 - C4C UI到Mashup的参数传递是如何进行的
- 机器学习降维算法一:PCA(主成分分析算法)
- JAVA使用FTPClient类读写FTP
- 高德地图10.0版本正式发布,升级为国民出行平台
- CCF NOI1061 Wifi密码
- 2010年IT领域的十大收购
- PHP命令行脚本接收传入参数的三种方式
- 频率波数域matlab,频率-波数域方法的发展及其在台阵数据分析中的应用
- 教你如何轻松玩转自媒体淘客,赚大钱!
- A FastDetectionMethodviaRegion-BasedFullyConvolutionalNeuralNetworksforShieldTunnelLiningDefects-笔记
- 计算10光年是多少米java_1光年是多少米,9.46×10^15米(最快的火箭需飞108000年)...
- 如何做一款有灵魂的App——关于hope的启发以及对于追梦App的思考
- linux压缩后删原文件夹,Linux tar 如何在压缩之后删除原文件及相关拓展用法
- vue 实现一个滑块拖动验证功能
- 一台电脑上idea+webstorm使用nginx配置前后端分离
- Sorry, you can’t enroll at this time. 苹果apple id 出生日期 怎么改
热门文章
- 【ICML 2015迁移学习论文阅读】Unsupervised Domain Adaptation by Backpropagation (DANN) 反向传播的无监督领域自适应
- response中setContentType、setCharacterEncoding和setHeader方法的解释
- ubuntu rsync 命令拷贝,显示进度
- Android简单计时器详解(Timer)
- 目前计算机常用的硬盘类型,干货大放送,电脑硬盘分类你知道几个?
- Android 监听wifi总结
- Spring Boot 项目鉴权的 4 种方式
- 实现图片跟随鼠标移动
- android studio zbar,Zbar and Zxing in android studio
- 【贺图】子兮祝您2015年新春快乐!