整型與字符串轉換


  我們寫程序的時候經常會遇到整型和字符串相互轉換的問題,這里要用到幾個函數,itoa(),atoi(),sprintf()下面來介紹下這幾個函數的具體用法!

itoa
  功 能:把一整數轉換為字符串
  用 法:char *itoa(int value, char *string, int radix);
  詳細解釋:itoa是英文integer to array(將int整型數轉化為一個字符串,並將值保存在數組string中)的縮寫.
  參數:
  value: 待轉化的整數。
  radix: 是基數的意思,即先將value轉化為radix進制的數,范圍介於2-36,比如10表示10進制,16表示16進制。
  * string: 保存轉換后得到的字符串。
  返回值:
  char * : 指向生成的字符串, 同*string。
  備注:該函數的頭文件是"stdlib.h"

//itoa用法 
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int main(){
    int number = 123456;
    char str[20];
    itoa(number,str,10);
    printf("integer=%d,string=%s\n",number,str);
    cout<<"str[0]: "<<str[0]<<endl; 
} 

atoi
  C語言庫函數名: atoi
  功 能: 把字符串轉換成整型數.
  名字來源:array to integer 的縮寫.
  函數說明: atoi()會掃描參數nptr字符串,如果第一個字符不是數字也不是正負號返回零,否則開始做類型轉換,之后檢測到非數字或結束符 \0 時停止轉換,返回整型數。
  原型: int atoi(const char *nptr);
  需要用到的頭文件: #include <stdlib.h>

//atoi用法
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
using namespace std;
int main(){
    char *str = "123456";
    int n = atoi(str);
    printf("string=%s, int=%d\n",str,n);
    return 0;
}

sprintf()

  1. 可以將變量打印到字符串里,獲取數字的字符形式

//sprintf()用法 
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
    char str[100];
    int n = 1234;
    sprintf(str,"%d",n);
    cout<<str<<endl;
    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM