C語言 庫函數 strtoul()
C語言 庫函數 strtoul()
C 庫函數 unsigned long int strtoul(const char *str, char **endptr, int base) 把參數 str 所指向的字符串根據給定的 base 轉換為一個無符號長整數(類型為 unsigned long int 型),base 必須介于 2 和 36(包含)之間,或者是特殊值 0。
1. 聲明
下面是 strtoul() 函數的聲明。
unsigned long int strtoul(const char *str, char **endptr, int base)
2. 參數
- str -- 要轉換為無符號長整數的字符串。
- endptr -- 對類型為 char* 的對象的引用,其值由函數設置為 str 中數值后的下一個字符。
- base -- 基數,必須介于 2 和 36(包含)之間,或者是特殊值 0。
3. 返回值
該函數返回轉換后的長整數,如果沒有執行有效的轉換,則返回一個零值。
4. 實例
下面的實例演示了 strtoul() 函數的用法。
#include <stdio.h> #include <stdlib.h> int main() { char str[30] = "2030300 This is test"; char *ptr; long ret; ret = strtoul(str, &ptr, 10); printf("數字(無符號長整數)是 %lu\n", ret); printf("字符串部分是 |%s|", ptr); return(0); }
讓我們編譯并運行上面的程序,這將產生以下結果:
數字(無符號長整數)是 2030300 字符串部分是 | This is test|