當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C語言 wcstol用法及代碼示例


C語言wchar頭文件(wchar.h)中wcstol函數的用法及代碼示例。

用法:

long int wcstol (const wchar_t* str, wchar_t** endptr, int base);
將寬字符串轉換為長整數
解析C寬字符串str將其內容解釋為指定內容的整數根據,以long int價值。如果endptr不是空指針,該函數還會設置endptr指向數字後的第一個字符。

這是寬字符等價於strtol(<cstdlib>),翻譯str以同樣的方式。

參數

str
以整數表示的C寬字符串。
endptr
引用類型的對象wchar_t*,其值由函數設置為中的下一個字符str數值之後。
此參數也可以是空指針,在這種情況下不使用。

返回值

成功後,函數將轉換後的整數返回為long int值。
如果無法執行有效的轉換,則返回零值(0L)。
如果讀取的值超出可表示的值範圍達long int,函數返回LONG_MAX或者LONG_MIN(在<climits>), 和errno被設定為ERANGE

示例

/* wcstol example */
#include <wchar.h>

int main ()
{
  wchar_t wsNumbers[] = L"2001 60c0c0 -1101110100110100100000 0x6fffff";
  wchar_t * pEnd;
  long int li1, li2, li3, li4;
  li1 = wcstol (wsNumbers,&pEnd,10);
  li2 = wcstol (pEnd,&pEnd,16);
  li3 = wcstol (pEnd,&pEnd,2);
  li4 = wcstol (pEnd,NULL,0);
  wprintf (L"The decimal equivalents are: %ld, %ld, %ld and %ld.\n", li1, li2, li3, li4);
  return 0;
}


輸出:

The decimal equivalents are: 2001, 6340800, -3624224 and 7340031

相關用法


注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C wcstol function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。