C語言atoi函數


C語言提供了一系列函數把字符串轉換為整數:atoi、atol、atoll和atoq。

1、包含頭文件

#include <stdlib.h>

2、函數聲明

int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);
long long atoq(const char *nptr);

3、功能說明

atoi:把字符串nptr轉換為int。

atol:把字符串nptr轉換為long int。

atol:把字符串nptr轉換為long long int。

atoq:atoq() is an obsolete name for atoll()。

4、示例

/*
 * 程序名:book.c,此程序用於演示atoi函數族。
 * 作者:C語言技術網(www.freecplus.net) 日期:20190525。
*/
int main()
{
  int ii=0;
  ii=atoi("123");
  printf("ii=%d\n",ii);  // 輸出ii=123

  ii=atoi("123abc");
  printf("ii=%d\n",ii);  // 輸出ii=123,合法數字后的abc被忽略。

  ii=atoi("abc123");
  printf("ii=%d\n",ii);  // 輸出ii=0,數字前有字符為非法。

  ii=atoi("+123");
  printf("ii=%d\n",ii);  // 輸出ii=123,+是合法字符。

  ii=atoi("-123");
  printf("ii=%d\n",ii);  // 輸出ii=-123,-是合法字符。
}

5、其它說明

1)atol函數把字符串轉換為long int,使用方法與atoi類似,您可以寫代碼測試一下,注意int和long的取值范圍,在64位操作系統中,int的取值范圍是-2147483648~2147483647,long的取仠范圍是-9223372036854775808~9223372036854775807。

2)在64位操作系統中,long和long long類型沒有區別,所以atoll和atoq函數暫時沒什么意義。

6、版權聲明

C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。

來源:C語言技術網(www.freecplus.net

作者:碼農有道

如果這篇文章對您有幫助,請點贊支持,或在您的博客中轉發我的文章,謝謝。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM