zoukankan      html  css  js  c++  java
  • int位数的获取及int类型转char *

    C语言获取int位数:

    int intlen(int num)
    {
    /*
    参数:要获取长度的int类型数据
    返回值:返回长度
    */
      int tmpn=num;
      int len=1;
      while(tmpn/=10)
        len++;
      return len;
    }

    C语言int类型转char *类型:

    void intostr(char *dest,int num,int intlen)
    {
    /*
    参数:
      dest---将int转换为char *后的存储位置
      num---要转换的int类型值
      intlen---int类型长度
    */
      int tmpn2=num;
      char tmpc[intlen+1];
      int i=intlen-1;
      tmpc[intlen]='';
      while(tmpn2)
      {
        tmpc[i]=48+(tmpn2%10);
        if(!(tmpn2/=10))
        tmpc[i-1]=40+tmpn2;
        i--;
      }
      memcpy(dest,tmpc,sizeof(tmpc));
    }

    例:

    /////////////////////////////////////////////////////////////////////////////////////////////////////

    #include <stdio.h>
    #include <string.h>

    int intlen(int num)
    {
      int tmpn=num;
      int len=1;
      while(tmpn/=10)
      len++;
      return len;
    }

    void intostr(char *dest,int num,int intlen)
    {
      int tmpn2=num;
      char tmpc[intlen+1];
      int i=intlen-1;
      tmpc[intlen]='';
      while(tmpn2)
      {
        tmpc[i]=48+(tmpn2%10);
        if(!(tmpn2/=10))
        tmpc[i-1]=40+tmpn2;
        i--;
      }
      memcpy(dest,tmpc,sizeof(tmpc));
    }

    int main()
    {
      int num=1234567;
      char str[intlen(num)+1];
      intostr(str,num,intlen(num));
      printf("%s ",str);
      return 0;
    }

    /////////////////////////////////////////////////////////////////////////////////////////////////////

  • 相关阅读:
    Oracle9i数据库移动过程
    基于索引的SQL语句优化之降龙十八掌
    activex发布步骤
    用ftpsupport进行ftp上传
    周五晚上看了变形金刚
    故宫游
    UTF8转GB2312
    跨数据库的视图【自己留着看】
    数学之美 - 布隆过滤器(Bloom Filter)【转】
    搜索引擎优化SEO的ppt讲义
  • 原文地址:https://www.cnblogs.com/Mr-Wenyan/p/7359141.html
Copyright © 2011-2022 走看看