static char rcsid[] = "@(#)$Id: atonum.c,v 1.7 2006/04/09 07:37:05 hurtta Exp $";
/******************************************************************************
* The Elm (ME+) Mail System - $Revision: 1.7 $ $State: Exp $
*
* Modified by: Kari Hurtta <hurtta+elm@posti.FMI.FI>
* (was hurtta+elm@ozone.FMI.FI)
******************************************************************************
* The Elm Mail System
*
* Copyright (c) 1993 USENET Community Trust
*****************************************************************************/
#include "headers.h"
/*
* This is similar to atoi(), but it complains if the string
* contains any non-numeric characters. Returns the numeric
* value on success, -1 on error.
*/
int atonum(str)
char *str;
{
register int value;
if (*str == '\0')
return -1;
value = 0;
while (isdigit(*str))
value = (value*10) + (*str++ - '0');
return (*str == '\0' ? value : -1);
}
#ifdef _TEST
#include <stdio.h>
main()
{
char buf[1024];
while (gets(buf) != NULL)
printf("atonum(%s) = %d\n", buf, atonum(buf));
putchar('\n');
exit(0);
}
#endif
/*
* Local Variables:
* mode:c
* c-basic-offset:4
* buffer-file-coding-system: iso-8859-1
* End:
*/
syntax highlighted by Code2HTML, v. 0.9.1