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

作者:码农有道

如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发我的文章,谢谢。

版权声明:本文为wucongzhou原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wucongzhou/p/12696170.html