strtol() - C語言庫函數
C庫函數 long int strtol(const char *str, char **endptr, int base) 字符串str中的初始部分轉換為long int值,根據給定的基,必須是2和36(含)之間或者是特殊值0。
聲明
以下是 strtol() 函數的聲明。
long int strtol(const char *str, char **endptr, int base)
參數
-
str -- 這是一個字符串,它包含一個整數表示。
-
endptr -- 這是參考對象char *類型,其值設置功能str中的數值後,到下一個字符。
-
base -- 這是基,必須是2和36之間或者是特殊值0。
返回值
這個函數返回一個長整型值,否則返回零值轉換的整數。
例子
下麵的例子演示了如何使用strtol() 函數。
#include <stdio.h> #include <stdlib.h> int main() { char str[30] = "2030300 This is test"; char **ptr; long ret; ret = strtol(str, ptr, 10); printf("The number(unsigned long integer) is %ld ", ret); printf("String part is |%s|", *ptr); return(0); }
讓我們編譯和運行上麵的程序,這將產生以下結果:
The number(unsigned long integer) is 2030300 String part is | This is test|