LIBRERIAS Y FUNCIONES DEL C

Librería
stdlib.h

Función
abs()

Descripción
Calcula el valor absoluto de un entero num. Si el resultado no puede ser representado, el comportamiento no está definido. La función abs retorna el valor absoluto.

Ejemplo
#include <iostream.h> #include <stdlib.h> void main() { int num; cout<<"Escriba un numero entero:"; cin>>num; cout<<"abs ("<<num<<")="<<abs(num)<<endl; }

stdlib.h

labs()

Similar a abs, excepto que el argumento es de tipo long int. La función labs retorna el valor absoluto (de tipo long int).

#include <iostream.h> #include <stdlib.h> void main() { long int num; cout<<"Escriba un numero entero:"; cin>>num; cout<<"labs ("<<num<<")="<<labs(num)<<endl; }

stdlib.h

atof()

Convierte la porción inicial de la cadena apuntada por numPtr a una representación de double. La función atof retorna el valor convertido.

#include <iostream.h> #include <stdlib.h> void main() { chart numPtr[11] = "123.456789"; cout<<"convirtiendo la cadena " <<numPtr<<" en un numero:\n"<<atof(numPtr)<<endl; }

stdlib.h

atoi()

Convierte la porción inicial de la cadena apuntada por numPtr a una representación de int. La función atoi retorna el valor convertido.

#include <iostream.h> #include <stdlib.h> void main() { char numPtr[5] = "1234"; cout<<"convirtiendo la cadena " <<numPtr<<" en un numero:\n"<<atoi(numPtr)<<endl; }

10

10

stdlib.h

atol()

Convierte la porción inicial de la cadena apuntada por numPtr a una representación de long. La función atol retorna el valor convertido.

#include <iostream.h> #include <stdlib.h> void main() { char numPtr[11] = "1234567890"; cout<<"convirtiendo la cadena " <<numPtr<<" en un numero:\n"<<atol(numPtr)<<endl; }

stdlib.h

exit()

Ocasiona una terminación normal del programa. La función exit no retorna ningún valor.

#include <iostream.h> #include <stdlib.h> void main() { char cadena; cout<<"Introduzca un caracter. Para salir, escriba 'Q':"; cin>>cadena; while(1) if( cadena == 'Q' ) exit(0); }

stdlib.h

rand()

La función rand calcula una secuencia de números enteros pseudo-aleatorios en el intervalo de 0 á RAND_MAX. La función rand retorna un entero pseudo-aleatorio

#include <iostream.h> #include <stdlib.h> void main() { unsigned int i=1; cout<<"10 números generados aleatoriamente: \n\n"; for( i=1; i<=10; i++ ) cout<<rand()<<endl; }

Stdlib.h

System()

Pasa la cadena apuntada por cadena al entorno local para ser ejecutada por el "procesador de comandos" - también denominado "intérprete de comandos" - de una forma definida según la implementación. Un puntero nulo puede ser usado para cadena para comprobar si existe un procesador de 10 comandos. Si el argumento es un

#include <iostream.h> #include <stdlib.h> /* Sólo funcionará si "dir" es aceptable por el sistema: MS-DOS, por ejemplo */ int main( void ) { cout<<"La lista de ficheros en el directorio actual, según el comando (dir):\n"; system( "dir" ); return 0; }

MACROS Y CONSTANTES
Ctype.h Isalnum() Comprueba sin carácter alfanumérica. un #include <stdio.h> es #include <ctype.h>
int main() { char cadena[] = ";0sR(h&R1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isalnum(cadena[i])); return 0;

Isalnum es una macro que verifica el entero c pertenece al rango de letras (A a Z o a a z) o al de dígitos (0 a 9), por defecto. La } verificación se hace mediante una tabla, y su comportamiento depende le la categoría LC_CTYPE actual.

Ctype.h

isalpha

El valor de retorno será no nulo si c es una letra o un número, y cero en caso contrario. Comprueba sin un #include <stdio.h> carácter es #include <ctype.h> alfabética. int main() isalpha es una macro que verifica el entero c pertenece al rango de letras (A a Z o a a z), por defecto. La verificación se hace mediante una tabla, } y su comportamiento depende le la 10
{ char cadena[] = ";0sR(h&R1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isalpha(cadena[i])); return 0;

categoría actual.

LC_CTYPE

Ctype.h

Isascii()

El valor de retorno será no nulo si c es una letra y cero en caso contrario. Comprueba sin un #include <stdio.h> carácter pertenece al #include <ctype.h> ASCII de 7 bits. int main() Isascii es una macro que verifica el entero c pertenece al rango de (0 a 127). Esta macro está definida para todos lo valores enteros.
{ char cadena[] = ";0ñsáR(h&~?RÛ1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isascii(cadena[i])); return 0; }

Ctype.h

Isdigit()

El valor de retorno será no nulo si c está en el rango entre 0 y 127, en hezadecimal entre 0x00 y 0x7f. Comprueba sin un #include <stdio.h> carácter es un dígito #include <ctype.h> decimal. int main() isdigit es una macro que verifica el entero c pertenece al rango caracteres de digitos decimales, que depende de la categoría local } LC_CTYPE, por defecto, el rango es de ('0' a '9').
{ char cadena[] = ";0ñfáR(4h&~?RÛ1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isdigit(cadena[i])); return 0;

Ctype.h

Islower()

El valor de retorno será no nulo si c es un dígito decimal. Comprueba sin un #include <stdio.h> carácter es de tipo #include <ctype.h> minúscula. int main() Islower es una macro que verifica el entero c pertenece al rango de caracteres de
{ char cadena[] = "aAbBcCdD31&75$/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i],

10

islower(cadena[i]));

letras minúsculas, return 0; que por defecto son } los que están en el rango a a z. El comportamiento depende de la categoría local de LC_CTYPE. El valor de retorno será no nulo si c es un carácter en minúscula. Comprueba sin un #include <stdio.h> carácter es de tipo #include <ctype.h> mayúscula. int main() Islower es una macro que verifica el entero c pertenece al rango de caracteres de letras mayúsculas, que por defecto son los que están en el } rango A a Z. El comportamiento depende de la categoría local de LC_CTYPE. El valor de retorno será no nulo si c es un carácter en mayúscula. Comprueba sin un carácter es correspondiente a un signo de puntuación.
{ char cadena[] = "aAbBcCdD31&75$/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isupper(cadena[i])); return 0;

Ctype.h

Isupper()

Ctype.h

Ispunct()

#include <stdio.h> #include <ctype.h> int main() { char cadena[] = "aAb.Bc/Cd(D3:1&,75%$/"; int i;

ispunct es una macro que verifica el entero c pertenece al rango for(i = 0; cadena[i]; i++) de caracteres de los printf("%c, %d\n", cadena[i], ispunct(cadena[i])); signos de puntuación, que por return 0; defecto son todos } menos los alfanuméricos y el blanco ' '. El comportamiento

10

depende de categoría local LC_CTYPE.

la de

Ctype.h

Isspace()

El valor de retorno será no nulo si c es un signo e puntuación. Comprueba sin un #include <stdio.h> carácter es de tipo #include <ctype.h> espacio. int main() isspace es una macro que verifica el entero c pertenece grupo de caracteres de espacio, ' ', tab, retorno de carro, nueva línea, tabulador vertical o } salto de página. El comportamiento depende de la categoría local de LC_CTYPE.
{ char cadena[] = ";0 ñsáR\n(h &~?\177R\tÛ 1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isspace(cadena[i])); return 0;

Ctype.h

Isxdigit()

El valor de retorno será no nulo si c es un carácter de tipo espacio. Comprueba sin un #include <stdio.h> carácter es un dígito #include <ctype.h> hexadecimal. int main() Isxdigit es una macro que verifica el entero c pertenece al rango caracteres de digitos decimales, que depende de la categoría local } LC_CTYPE, por defecto, el rango es de ('0' a '9', 'a' a 'f' y 'A' a 'F'). El valor de retorno será no nulo si c es un dígito hexadecimal.
{ char cadena[] = ";0ñfáR(4h&5d~?ERÛ1/"; int i; for(i = 0; cadena[i]; i++) printf("%c, %d\n", cadena[i], isxdigit(cadena[i])); return 0;

10

10