itoa函数,srpintf()函数 ,atoi函数

itoa函数,srpintf()函数 ,atoi函数

itoa()函数

*itoa()原型: char *itoa( int value, char string,int radix);

原型说明:

输入参数:

value:要转换的数据。
string:目标字符串的地址。
radix:转换后的进制数,可以是10进制、16进制等,范围必须在 2-36。

功能:将整数value 转换成字符串存入string 指向的内存空间 ,radix 为转换时所用基数(保存到字符串中的数据的进制基数)。

返回值:函数返回一个指向 str,无错误返回。

注意:itoa不是一个标准的c函数,他是windows特有的,跨平台写程序,要用sprintf。

#include <stdio.h>
#include <ctype.h>


//整数的各位数字加‘0’转换为char型并保存到字符数组中                                                                                           
int itoa(int n, char s[])
{
    int i;
    int j;
    int sign;

    sign = n;    //记录符号
    if(sign < 0)
    {
       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 \r\n", s[j]);
    }
    return 0;
}
int main()
{
    int n;
    char s[20];

    n = -688;
    itoa(n, s);
    return 0;
}

srpintf()函数的功能也非常强大:效率比一些字符串操作函数要高;而且更具灵活性;可以将想要的结果输出到指定的字符串中,也可作为缓冲区,而printf只能输出到命令行上~

头文件:stdio.h

函数功能:格式化字符串,将格式化的数据写入字符串中。

函数原型:int sprintf(char *buffer, const char *format, [argument]…)

参数:

(1)buffer:是char类型的指针,指向写入的字符串指针;

(2)format:格式化字符串,即在程序中想要的格式;

(3)argument:可选参数,可以为任意类型的数据;

函数返回值:buffer指向的字符串的长度;

用处:

(1)格式化数字字符串:在这点上sprintf和printf的用法一样,只是打印到的位置不同而已,前者打印给buffer字符串,后者打印给标准输出,所以sprintf也可以用来将整型转化为字符串,比itoa效率高且如此地简便~比如:sprintf(buffer, “%d”, 123456);执行后buffer即指向字符串“123456”~

(2)连接字符:

下面通过两个例子来说明这个问题:

(a)连接以’\0’结束的字符串:

#include<stdio.h>  
int main()  
{  
    char buffer[10];  
    char *a = “1234”;  
    char *b = “5678”;  
    sprintf(buffer, ”%s%s”, a, b);  
    printf(”%s\n”, buffer);  
    return 0;  
}  
#include<stdio.h>
int main()
{
 char buffer[10];
  char *a = "1234";
 char *b = "5678";
 sprintf(buffer, "%s%s", a, b);
   printf("%s\n", buffer);
  return 0;
}

在这里插入图片描述

atoi()原型: int atoi(const char *str );

函数功能:把字符串转换成整型数。

参数str:要进行转换的字符串

返回值:每个函数返回 int 值,此值由将输入字符作为数字解析而生成。 如果该输入无法转换为该类型的值,则atoi的返回值为 0

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a;
    char *ptr1 = "-12345";

    a = atoi(ptr1);

    printf("a = %d,%d/n", a);

    return 0;}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114900.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux下chkconfig命令详解

    Linux下chkconfig命令详解

    2021年10月28日
  • python之random库

    random库是用于产生并运用随机数的标准库1.random库函数(1)random.seed(a)设置随机种子数,可以是浮点数或整数,如果不设置的话,则random库默认以系统时间产生当作随

    2021年12月29日
  • Java和JavaScript区别与联系

    Java和JavaScript区别与联系Java和JavaScript有啥区别,据说还有很多人不知道,来给大家科普一下两者区别!Java和JavaScript不同之处:1.用处不一样:它们最本质的不同就是用途:Java目前被广泛应用于PC端、手机端、互联网、数据中心等等;而JavaScript则被主要用于嵌入文本到HTML页面,读写HTML元素,控制cookies等。2.出身不同:Javascript与…

    2022年7月8日
  • 分子模拟软件amber_分子模拟软件Discovery Studio教程(十):构建基于受体-配体复合物药效团模型…

    分子模拟软件amber_分子模拟软件Discovery Studio教程(十):构建基于受体-配体复合物药效团模型…DiscoveryStudio™(简称DS)是专业的生命科学分子模拟软件,DS目前的主要功能包括:蛋白质的表征(包括蛋白-蛋白相互作用)、同源建模、分子力学计算和分子动力学模拟、基于结构药物设计工具(包括配体-蛋白质相互作用、全新药物设计和分子对接)、基于小分子的药物设计工具(包括定量构效关系、药效团、数据库筛选、ADMET)和组合库的设计与分析等。本章节利刃君为大家带来了使用Discover…

    2022年5月26日
  • 最好懂的python文件读写(详解)

    最好懂的python文件读写(详解)目录  1、文件读写的流程  2、文件读写的几种常见模式  3、read、readline、readlines的区别  4、对于一个10G的大文件,怎么高效的查看文件中的内容呢?1、文件读写的流程1)类比windows中手动操作txt文档,说明python中如何操作txt文件?①windows中手动操作txt文件的步骤找到word文档打开word文档查看(或操作)word文…

    2022年6月2日
  • Pycharm怎么改背景颜色(超详细)「建议收藏」

    Pycharm怎么改背景颜色(超详细)「建议收藏」1.首先打开Pycharm,点击file(文件),在点击settings(设置)点击Editor(编辑器),点击ColorScheme(色彩方案),再点击ConsoleColors(控制台颜色)打开控制台颜色之后,看Scheme(方案),下拉找到你自己喜欢的颜色,在下面的框框里面可以看到你换好的颜色的样子,随后再点击OK。最后再点击yes,我们的背景颜色就换好了哈哈哈哈哈希望可…

    2022年6月20日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号