C語言之strtol函數(shù)用法詳解
strtol 函數(shù)用法
strtol是一個C語言函數(shù),作用就是將一個字符串轉(zhuǎn)換為長整型long,其函數(shù)原型為:
long int strtol (const char* str, char** endptr, int base);
下面我們來看下每個參數(shù)的意義:
str是要轉(zhuǎn)換的字符
enptr是指向第一個不可轉(zhuǎn)換的字符位置的指針
base的基數(shù),表示轉(zhuǎn)換成為幾進(jìn)制的數(shù)
兩點注意:
- 當(dāng) base 的值為 0 時,默認(rèn)采用 10 進(jìn)制轉(zhuǎn)換,但如果遇到 '0x' / '0X' 前置字符則會使用 16 進(jìn)制轉(zhuǎn)換,遇到 '0' 前置字符則會使用 8 進(jìn)制轉(zhuǎn)換。
- 若endptr 不為NULL,則會將遇到的不符合條件而終止的字符指針由 endptr 傳回;若 endptr 為 NULL,則表示該參數(shù)無效,或不使用該參數(shù)。
string v = "1.10.2"; char *c = (char*)v.c_str(); long d = strtol(c, &c, 10); printf("%d\n", d); printf("%s\n", c);
上面這段代碼先定義了一個值為"1.10.2"的字符串c,然后調(diào)用strtol后,此時的d為1,字符串c變成了".10.2"。
參考資料:
http://c.biancheng.net/cpp/html/129.html
到此這篇關(guān)于C語言之strtol函數(shù)用法詳解的文章就介紹到這了,更多相關(guān)C語言之strtol函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++實現(xiàn)LeetCode(40.組合之和之二)
這篇文章主要介紹了C++實現(xiàn)LeetCode(40.組合之和之二),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07創(chuàng)建二叉樹 二叉樹如何刪除節(jié)點操作教程
本文將詳細(xì)介紹二叉樹的創(chuàng)建,節(jié)點刪除,節(jié)點增加等一系列操作方法,需要的朋友可以參考下2012-12-12Visual?Studio?Code?配置C、C++?文件debug調(diào)試環(huán)境的詳細(xì)過程
這篇文章主要介紹了Visual?Studio?Code?配置C、C++?文件debug調(diào)試環(huán)境,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02C++關(guān)鍵字mutable學(xué)習(xí)筆記
這篇文章主要為大家介紹了C++關(guān)鍵字mutable學(xué)習(xí)筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10