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]);

C语言itoa函数和atoi 函数的更多相关文章

  1. 【转载】C语言itoa()函数和atoi()函数详解(整数转字符C实现)

    本文转自: C语言itoa()函数和atoi()函数详解(整数转字符C实现) 介绍 C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. int/float to ...

  2. C语言itoa()函数和atoi()函数详解(整数转字符C实现)

    1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明. ● itoa():将 ...

  3. C语言itoa()函数和atoi()函数详解(整数转字符)

    http://c.biancheng.net/cpp/html/792.html C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. 以下是用itoa()函数将整 ...

  4. [置顶] C语言itoa()函数和atoi()函数详解(整数转字符C实现)

    头文件:#include <stdlib.h> atoi() 函数用来将字符串转换成整数(int),其原型为: int atoi (const char * str); [函数说明]ato ...

  5. C语言itoa()函数和atoi()函数详解(整数转字符C实现)【转载】

    文章转载自https://www.cnblogs.com/bluestorm/p/3168719.html   C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. ...

  6. 【C语言】模拟实现atoi函数

    atoi(表示 ascii to integer)是把字符串转换成整型数的一个函数. atoi()函数会扫描参数 nptr字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过isspace( ...

  7. memset和memcpy函数、atoi函数

    memset void *memset(void *s,int c,size_t n) 总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c.如下: // 1.将已开辟内存空间s的首n个字节 ...

  8. C语言itoa()函数和atoi()函数

    以下是用itoa()函数将整数转换为字符串的一个例子: # include <stdio.h> # include <stdlib.h> void main (void) { ...

  9. itoa()函数和atoi()函数

     1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明.● itoa():将 ...

随机推荐

  1. 一个urllib2构建的html下载器的代理组件的实现方案

    调用栈/函数链如下: 情形一:下载器初始化时 __init__ buildOpener#构建opener newProxy4Opener#装备代理 getNewProxy#获取代理 maintainP ...

  2. Mac内建Apache

    打开终端 重启apache:sudo /usr/sbin/apachectl restart 关闭apache:sudo /usr/sbin/apachectl stop 开启apache:sudo ...

  3. 使用Linux的命令行工具做简单的文本分析

    Basic Text Analysis with Command Line Tools in Linux | William J Turkel 这篇文章非常清楚的介绍了如何使用Linux的命令行工具进 ...

  4. vue实现一个移动端屏蔽滑动的遮罩层

    在扯废话浪费大家的时间之前,先上个代码好了,使用vue实现起来很简单-- <div class="overlayer" @touchmove.stop > </d ...

  5. C primer plus 读书笔记第十章

    这一章的标题是数组和指针.指针是C语言的精髓所在,而数组的概念和指针又息息相关,所以放在一起讲. 1.数组 主要内容有:1.1.数组初始化.1.2.指定初始化.1.3.数组赋值.1.4.数组边界.1. ...

  6. jni java和C之间的值传递(int String int[])

    我们通过jni调用C代码不可能每次只是去调一个方法,通常,我们需要传递一些值过去. 例如,播放电影,那就肯定需要你把电影的 url给 C的播放器吧,等等. 接下来就看一看怎么去传递这些值: 首先是最简 ...

  7. Spring中的AOP

    什么是AOP? (以下内容来自百度百科) 面向切面编程(也叫面向方面编程):Aspect Oriented Programming(AOP),通过预编译方式和运行期动态代理实现程序功能的统一维护的一种 ...

  8. Eclipse混淆文件导入Android Studio Gradle编译报input jar file is specified twice

    Eclipse项目中的混淆配置文件 复制到AS中 在混淆的过程中提示如下错误     Error:Execution failed for task ':app:proguardDemoRelease ...

  9. c - 计算1到20的阶乘

    #include <stdio.h> /* 题目:求 1+2!+3!+...+20!的和 */ unsigned long long int factorial(long n) { uns ...

  10. oracle特殊字符的ascii值