Escribe una función eficiente para implementar atoi() función en C. El estándar atoi() La función convierte la string C de entrada a su valor entero correspondiente.

Implementación iterativa de atoi():

Descargar  Ejecutar código

Resultado:

12345

Implementación recursivo de atoi():

Descargar  Ejecutar código

Resultado:

12345

 
Las implementaciones iterativas y recursivos anteriores de atoi() no es similar a la implementación estándar de atoi(). La función primero debe descartar la mayor cantidad de caracteres de espacio en blanco hasta que se encuentre el primer carácter que no sea un espacio en blanco. Luego, a partir de este carácter, toma un signo más o menos inicial opcional, seguido de tantos dígitos de base 10 como sea posible, y los interpreta como un valor numérico. La string, si contiene caracteres adicionales después de los que forman el número entero, se ignoran. No se realiza ninguna conversión si la string está vacía o solo contiene caracteres de espacio en blanco y se devuelve cero. Siguiendo atoi() La implementación se encarga de todo esto:

Descargar  Ejecutar código

Resultado:

-1234567890

 
La complejidad temporal de todas las soluciones anteriores es O(n), dónde n es la longitud de la string de entrada.

de eso se trata atoi() implementacion en c