-
strtoul
鎖定
- 中文名
- 將字符串轉換成無符號長整型數
- 外文名
- strtoul
- 相關函數
- atof,atoi,atol,strtod
- 表頭文件
- #include<stdlib.h>
- 定義函數
- unsigned long strtoul
strtoul基本介紹
strtoul (將字符串轉換成無符號長整型數)
表頭文件
#include<stdlib.h>
定義函數
unsigned long strtoul(const char *nptr,char **endptr,int base);
strtoul函數説明
strtoul()會將參數nptr字符串根據參數base來轉換成無符號的長整型數。參數base範圍從2至36,或0。參數base代表採用的進制方式,如base值為10則採用10進制,若base值為16則採用16進制數等。當base值為0時會根據情況選擇用哪種進制:如果第一個字符是'0',就判斷第二字符如果是‘x’則用16進制,否則用8進制;第一個字符不是‘0’,則用10進制。一開始strtoul()會掃描參數nptr字符串,跳過前面的空格字符串,直到遇上數字或正負符號才開始做轉換,再遇到非數字或字符串結束時('')結束轉換,並將結果返回。若參數endptr不為NULL,則會將遇到不合條件而終止的nptr中的字符指針由endptr返回。
參數
- nptr-- 要轉換為無符號長整數的字符串。
- endptr-- 對類型為 char* 的對象的引用,其值由函數設置為 nptr 中數值後的下一個字符。
- base-- 基數,必須介於 2 和 36(包含)之間,或者是特殊值 0。
- 返回轉換後的長整型數,否則返回ERANGE並將錯誤代碼存入errno中。
附加説明
- ERANGE指定的轉換字符串超出合法範圍。
範例
參考strtol()
例子:將十六進制 0xFF,轉換成 10進制,得到 255
#include<stdio.h> #include<stdlib.h> int main() { int a; char pNum[]="0xFF"; a=strtoul(pNum,0,0);//最後的0,表示自動識別pNum是幾進制 printf("%ul\n",a); return 0; }
————輸出 255
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:24次歷史版本
- 最近更新: Sun北葵向暖233