#include <stdlib.h> int atoi(const char *ristra);
Convierte una ristra en un entero.
Devuelve un entero con el valor numérico de la ristra pasada, o cero si la ristra no representa un número.
ANSI, POSIX
La función subRistraAEntero obtiene, si existe, la primera subristra de caracteres numéricos de la ristra pasada por parámetro y la convierte en un número entero, en caso de que no exista devuelve el valor mínimo de un entero.
#include <stdlib.h>
#include <limits.h>
int SubRistraAEntero(const char *ristra, int n){
char subristra[n];
/* INT_MIN es una macro definida en limits.h con el valor mínimo de un número entero */
int i, k=0, entero=INT_MIN;
for(i=0;i<n;i++)
if(subristra[i]>='0' && subristra[i]<='9')
subristra[k++]=ristra[i];
else
if(k>0) {
subristra[k]='\0';
break;
}
if(k>0)
entero=atoi(subristra);
return entero;
}