C语言atoi和atol函数详解和示例

2021-02-04 07:16

阅读:543

标签:测试   ofo   free   整数   code   const   声明   使用方法   字符串转换   

C语言提供了一系列函数把字符串转换为整数:atoi、atol、atoll和atoq。

1、包含头文件

#include 

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)

作者:码农有道

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

C语言atoi和atol函数详解和示例

标签:测试   ofo   free   整数   code   const   声明   使用方法   字符串转换   

原文地址:https://blog.51cto.com/14793471/2491275


评论


亲,登录后才可以留言!