《C库 — 字符串转换成整型数函数atoi》

1.atoi函数原型

int atoi(const char *nptr);

  atoi (表示 ascii to integer)是把字符串转换成整形数的一个函数。int atoi(const char *nptr) 函数会扫描参数 nptr字符串,会跳过前面的空白字符(例如空格,tab缩进)等。如果 nptr不能转换成 int 或者 nptr为空字符串,那么将返回0。

  特别注意,该函数要求被转换的字符串是按十进制数理解的。atoi输入的字符串对应数字存在大小限制(与int类型大小有关),若其过大可能报错-1。

  注意:当有数字字符和其他字符混合时,需要将两个分离出来。

2.例子

#include <stdlib.h>
#include <stdio.h>

int main(void)
{
    int n;
    char *str = "12345.67";
    n = atoi(str);
    printf("n=%d\n",n);
    return 0;
}

  输出:n = 12345

  说明当检测到不是数字字符的时候,就直接返回。

#include <stdlib.h>
#include <stdio.h>

int main(void)
{
    int n;
    char *str = "pp12345.67";
    n = atoi(str);
    printf("n=%d\n",n);
    return 0;
}

  输出:n = 0 

猜你喜欢

转载自www.cnblogs.com/zhuangquan/p/12572730.html