atoi.c

来自「MINIX系统源码」· C语言 代码 · 共 31 行

C
31
字号
/*
 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 * See the copyright notice in the ACK home directory, in the file "Copyright".
 */
/* $Header: atoi.c,v 1.4 90/05/22 12:22:25 ceriel Exp $ */

#include	<ctype.h>
#include	<stdlib.h>

/* We do not use strtol here for backwards compatibility in behaviour on
   overflow.
*/
int
atoi(register const char *nptr)
{
	int total = 0;
	int minus = 0;

	while (isspace(*nptr)) nptr++;
	if (*nptr == '+') nptr++;
	else if (*nptr == '-') {
		minus = 1;
		nptr++;
	}
	while (isdigit(*nptr)) {
		total *= 10;
		total += (*nptr++ - '0');
	}
	return minus ? -total : total;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?