c語言 字符串轉換爲int或float

       在c語言編程中,經常會遇到將字符串或者字符數組內的數據轉換爲int型數據或者float型數據,網上找了好多方法,結果都不可行,可能是C++的函數吧。在經過多方詢問後,發現可以用atoi和atof函數來進行轉換,具體如下:(它們都存在於<stdlib.h>中)

       atoi:

       atoi 是把字符串轉換成int型的一個c語言函數,很方便的進行使用。

       其函數參數是一個字符串,如果第一個非空格字符存在,是數字或者正負號則開始做類型轉換,之後檢測到非數字(包括結束符 \0) 字符時停止轉換,返回整型數。否則,返回零。

       例程:

#include <stdlib.h>
#include <stdio.h>
 
int main(void)
{
    int n;
    char* str = "23.5";
    n = atoi(str);
    printf("string=%s,n=%d\n",str,n);
    return0;
}

       atof:

       atof是把字符串轉換成float型的一個c語言函數,可以很方便的進行轉換。

       其函數參數是一個字符串。atof()會掃描參數字符串,跳過前面的空格字符,直到遇上數字或正負符號纔開始做轉換,而再遇到非數字或字符串結束時('\0')才結束轉換,並將結果返回。參數nptr字符串可包含正負號、小數點或E(e)來表示指數部分,如123.456或123e-2。返回值是轉換後的浮點型數。

       例程:

#include <stdlib.h>
#include <stdio.h>
 
int main(void)
{
    float f;
    char* str = "23.5";
    f = atof(str);
    printf("string=%s,f=%f\n",str,f);
    return0;
}

參考具體使用用法:

atoi:http://baike.baidu.com/link?url=5NtPSd87w0FmglMzOz5_LfEqiPVzLUK9cBlAoI4audhuKZzY_RK9261M6T5vB_ipvu4B5m1YJZLjr17fbcPM3K

atof:http://baike.baidu.com/link?url=MWN9ksPFdF-mQNZ4zOQF8NifC0DcW6j5tON40_gd13w_J_-c8fdwtR7xRQCwM4Yxxkc9WSeF8C9MYuRxlA2b0a


祝各位成功大笑



發佈了18 篇原創文章 · 獲贊 13 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章