将char字符转换成int整型,字符串与整型之间的相互转换

时间:2021-05-04 17:50:29
  • 将字符char类型转换成int整型

          将字符char类型转换成int整型的方法如下:
    char str_data='5';
    int int_data=(int)(str_data-'0');
    cout<<int_data<<endl;

    同样的道理将int转换成字符char是利用相反的方法;
    int data_int=9;
    char data_str=(char)(data_int+'0');
    cout<<data_str<<endl;
    需要注意的是因为字符只能是单个的字符,所以这种方法处理的int只能是个位数即0-9;
  • 将字符串转化成int

  •     将字符串转化成int的函数是atoi(atoi是C语言库函数)

    char p[]="123456";
    long a=atoi(p);
    cout<<a<<endl;
  • 将int整型转化成字符串型

        将int整型转化成字符串型
    int number = 123456;
    char str[25];
    itoa(number,str,10);
    需要说明的一点是itoa函数中第三个参数是表示进制,10就代表10进制,8就代表8进制。
    但是itoa函数并不是C标准库中的函数,而是Windows平台下扩展的,标准库中有sprintf,功能比这个更强,用法跟printf类似

    int number2=987654321;
    char str2[25];
    sprintf(str2,"%d",number2);
    cout<<str2<<endl;
    sprintf函数中第二个参数表示的是进制,十进制“%d”。

昨天网易的笔试,让我深刻意识到了类型之间转换的重要性,以前也看过,但是总是记不住,这下长记性了,估计以后还会用到。