Red de conocimiento informático - Computadora portátil - Problema de conversión de tipos de datos C: ¿Cómo convertir la entrada de datos char * argv [] en la función principal en un entero largo sin signo de 64 bits?

Problema de conversión de tipos de datos C: ¿Cómo convertir la entrada de datos char * argv [] en la función principal en un entero largo sin signo de 64 bits?

Sí, como se mencionó anteriormente.

Además, le daré un código fuente modificado, que es equivalente a _atoi64. El número devuelto es de tipo largo y puede admitir el procesamiento de números mayores que 4294967295.

long long MY_atol( const char *nptr)

{

int c; /*carácter actual*/

Sr. Long Long ; /*Número total actual*/

int símbolo; /*Si '-', es un número negativo, de lo contrario es un número positivo*/

/*Omitir espacios en blanco*/

mientras(es espacio((int)(unsigned char)* nptr))

nptr;

c =(int)(unsigned char )* nptr;

Símbolo = c; /*Guardar indicación de bandera*/

if (c == '-' || c == ' ')

c =( int)(unsigned char)* nptr;/*Omitir símbolos*/

Total = 0;

while (isdigit(c)) {

Total = 10 *Total(c-' 0 ');/*Número acumulado*/

c =(int)(unsigned char)* nptr;/*Obtener el siguiente carácter*/

}

if (symbol == '-')

Retorno - total

Otros

Retorno; total; /* Devuelve el resultado y lo niega si es necesario*/

}