当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 atol用法及代码示例


C语言stdlib头文件(stdlib.h)中atol函数的用法及代码示例。

用法:

long int atol ( const char * str );
将字符串转换为长整数
解析C-stringstr将其内容解释为整数,并作为type的值返回long int

该函数首先丢弃尽可能多的空格字符(如isspace),直到找到第一个非空白字符为止。然后,从该字符开始,选择一个可选的首字母或者符号后跟尽可能多的以10为底的数字,并将其解释为数值。

该字符串可以在形成整数的字符之后包含其他字符,这些其他字符将被忽略并且不会影响此函数的行为。

如果第一个非空格字符序列str不是有效的整数,或者如果不存在这样的序列,因为str为空或仅包含空格字符,不执行任何转换并返回零。

参数

str
C-string包含整数的表示形式。

返回值

成功后,函数将转换后的整数返回为long int值。
如果无法执行有效的转换,则返回零值。
如果转换后的值超出可表示值范围的范围,则long int,它导致未定义的行为。看strtol在可能的情况下,使用更健壮的cross-platform替代方案。

示例

/* atol example */
#include <stdio.h>      /* printf, fgets */
#include <stdlib.h>     /* atol */

int main ()
{
  long int li;
  char buffer[256];
  printf ("Enter a long number: ");
  fgets (buffer, 256, stdin);
  li = atol(buffer);
  printf ("The value entered is %ld. Its double is %ld.\n",li,li*2);
  return 0;
}


输出:

Enter a number: 567283
The value entered is 567283. Its double is 1134566.



相关用法


注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C atol function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。