Anda di halaman 1dari 9

El lenguaje C, C++ contiene numerosas funciones, cuando se emplean funciones de esta biblioteca estandar, se incrementa la transportabilidad de los programas.

Las funciones estandar se dividen en grupos, todas las funciones que pertenecen al mismo grupo estan declaradas en el archivo de cabecera (aquel que dice xxx.h), la letra "h" significa header en ingls y es lo que se llama cabecera. Para incluir alguna funcin perteneciente a estas cabeceras debemos escribir lneas de cdigo como se muestra de ejemplo: #include He disenado esta tabla para que estudiemos las bibliotecas de funciones, obviamente son las que he encontrado en mis libros y sistemas.

BIBLIOTECAS Y DESCRIPCIONES DE USO


Nombre de Biblioteca assert.h alloc.h ctype.h dir.h errno.h float.h limits.h math.h setjmp.h signal.h stdarg.h stdef.h stdio.h stlib.h string.h Descripcion Es proporcionar una definicion de la macro assert, que imprime un mensaje de error y aborta el programa Existen funciones para asignar, liberar memoria, u obtener informacion de bloques de memoria. Son funciones que nos permiten conocer la naturaleza de un caracter, o bien para convertir de mayusculas a minusculas y viceversa; y valores enteros a codigos ASCII. Esto permite ordenar, crear, modificar, mover y eliminar directorios Representa los numeros de error, despues que ocurre un error se puede consultar el valor de la varianble del sistema deerrno para obtener mas informacion sobre ese error. Define los limites de los tipos de coma flotante Define los limites de los diferentes tipos de enteros Contiene las funciones matematicas estandar utilizadas en C y C++ Define el tipo de jmp_buf para algunas funciones. Contiene funciones de estado. Define funciones que pueden ser llamadas con diferentes numeros de argumentos, de modo que se pueda escribir f(a) y f(a,b). Se definen algunos tipos especiales Incorporan las funciones de Entrada - Salida E/S estandar, tipos y macros Declara funciones que son utiles para diferentes propositos, en especial de busqueda y ordenacion. Este archivo contiene funciones para manejo de cadenas de caracteres.

time.h

Contiene funciones relativas a fechas y horas

Funciones Encontradas en las Bibliotecas


Nombre de funcin Tipo abs(i) acos(d) asin(d) atan(d) atan(d1, d2) atof(s) int double double double double double Biblioteca a la Sintaxis cual pertenece stdlib.h math.h math.h math.h math.h stdlib.h int abs(int i); double acos(double d); double asin(double d); double atan(double d); long double tanl(long double d); double atan(double d1, double d2); double atof(const char *cadena) Descripcin Devuelve el valor absoluto de i Devuelve el arco coseno de d Devuelve el arco seno de d Devuelve la arco tangente de d. Calcula el arco tangente del argumento x. Requiere el llamado de la biblioteca complex.h Devuelve el arco tangente de d1/d2 Convierte la cadena s a una cantidad de doble precisin. Requiere el llamdo de la biblioteca math.h Convierte la cadena s a un entero. La cadena debe tener el siguiente formato: [espacio en blanco][signo][ddd] (siendo obligatorio los digitos decimales). Convierte la cadena s a un entero largo. La cadena debe tener el siguiente formato: [espacio en blanco][signo][ddd] (siendo obligatorio los digitos decimales). Reserva memoria para una formacin de n elementos , cada uno de s bytes. Devuelve un puntero al principio del espacio reservado. Si no existente bastante espacio para el nuevo bloque o bien n o s es 0, calloc devuelve nulo. Ejemplo x = abs(-7) // x es 7 angulo = acos(0.5); // angulo devuelto es phi/3 angulo = asin(0.707); // aproximadamente phi/4 angulo atan(1.0); // angulo es phi/4 angulo = atan(y, x) double x; char *cad_dbl = "200.85"; ... x=atof(cad_dbl); // convierte la cadena "200.85" a valor real int i; char *cad_ent="123"; ... i=atoi(cad_ent); //convierte la cadena "123" al entero 123 long int i; char cad_ent="9876543"; ... i=atol(cad_ent); //convierte la cadena "9876543" al entero largo

atoi(s)

int

stdlib.h

int atoi(const char *cadena)

atol(s)

long

stdlib.h

long atol(const char *cadena);

calloc(n, s)

void(puntero)

malloc.h y stdlib.h o bien alloc.h y stdlib.h math.h math.h

void *calloc(size_t n, size_t s);

long *buffer buffer=(long *) calloc(40, sizeof(long));

ceil(d) cos(d)

double double

double ceil(double d); double cos(double d); complex cos(complex d);

Devuelve un valor redondeado por exceso al redondeo=ceil(5.1); //redondeo es 6 siguiente entero mayor Devuelve el coseno de d coseno_x=cos(1.6543)

cosh(d)

double

math.h

double cos(double d); complex cos(complex d);

Devuelve el coseno hiperblico de d

d=1.00; printf("d=%f.\n\n,d);

difftime(11, 12)

double

time.h

time_t inicio, fin; clrscrl(); Devuelve la diferencia de tiempo 11(hora2) inicio=time(NULL); double difftime(time_t hora2, time_t 12(hora1) , donde 11 y 12 representan el delay(5000) hora1) tiempo transcurrido despues de un tiempo fin=time(NULL) base (ver funcin time) print("Diferencia en segundos: %f\n", difftime(inicio,fin)); void exit(int estado) Cierra todos los archivos y buffers y termina el programa. El valor de u es asignado por la exit(0); funcion para indicar el estado de terminacin. Eleve e a la potencia d (e=2,7182818... es la d=100.00; base del sistema de logaritmos naturales y=exp(d); (neperianos)) printf("El exponencial de x=%f.\n\n",y); Devuelve el valor absoluto de d y=fabs(-7.25); // y vale 7.25 Cierra el archivo f. Devuelve el valor 0 si el int fclose(FILE "archivo"); archivo se ha cerrado con exito. Determina si se ha encontrado un fin de archivo. si es asi, devuelve un valor distinto feof(fichen); de cero, en otro caso devuelve 0 Lee un caracter del archivo f Lee una cadena s, con i caracteres, del archivo f c+fgetc(fp) fgets(caddemo, 80, fp);

exit(u)

void

stdlib.h

exp(d) fabs(d) fclose(f) feof(f) fgetc(f) fegts(s, i, f) floor(d) fmod(d1, d2) fopen(s1, s2)

double double int int int char(puntero) double double file(puntero)

math.h math.h stdio.h stdio.h stdio.h stdio.h math.h math.h stdio.h

double exp(double d); complex exp(complex d) double fabs(double d); int fclose(FILE *f); int feof(FILE *f); int fgetc(FILE f); char *fgets(char s, int s, FILE *f); double floor(double d); double fmod(double d1, double d2); FILE *fopen(const char *s1, const char *s2)

Devuelve un valor redondeado por defecto al x=floor(6.25); // x vale 6 entero menor mas cercano Devuelve el resto de d1/d2 (con el mismo signo que d1) Abre un archivo llamado s1, del tipo s2. Devuelve un puntero al archivo. * Modo Accion "r" "w" Abre para lectura Abre un archivo vacio para escritura resto=fmod(5.0,2.0); // resto igual a 1.0 if ((corriente2=fopen("datos","W+"))==NULL printf("El archivo...no se ha abierto \n");

"a" "r+" "w+" "a+" "rb" "wb" "ab" "rb+" "wb+" "ab+" fprintf(f, ...) fputc(c, f) fputs(s, f) fread(s, i1, i2, f) int int int int stdio.h stdio.h stdio.h stdio.h int fprintf(FILE *f, const char *formato [,arg,...]); int fputc(int c, FILE *f); int fputs(const char *cad, FILE *f)

Abre para escritura al final del archivo Abre para lectura/escritura Abre un archivo vacio para lectura/escritura Abre para lectura y anadir Abre un archivo binario para lectura. Abre un archivo binario para escritura Abre un archivo binario para anadir Abre un archivo binario para lectura/escritura. Abre un archivo binario para lectura/escritura Abre o crea un archivo binario para lectura/escritura

Escribe datos en el archivo f (el resto de los fprintf(f1, "El resultado es %f\n",result); argumentos Escribe un caracter en el archivo f Escribe una cadena de caracteres en el archivo f fputc(*(p++), stdout); fputs("esto es una prueba", f1); fread(buf, strlen(msg)+1, 1, flujo);

size_t fread(void *b, size_t t, size_t n, Lee i2 elementos, cada uno de tamano i1 FILE *f); bytes, desde el archivo f hasta la cadena s

free(p)

void

malloc.h o stdlib.h

void free(void *dir_memoria);

char *cad; // asignar memoria a la cadena Libera un bloque de memoria reservada cuyo cad=(char *)malloc(50); principio esta indicado por p. ... free(cad); // liberar memoria Lee datos del archivo f ( el resto de los argumentos fscanf(flujo, %s%f, cad, &f);

fscanf(f, ...) fseek(f, l, i)

int int

math.h stdio.h

int fscanf(FILE *f, const char *formato, [, direccion,... ]);

int fseek(FILE *f, long desplaza, int Mueve el puntero al archivo f una distancia fseek(f1,OL,SEEK_SET); // ir al principio origen); de 1 bytes desde la posicion i (i puede representar el principio del archivo, la posicion actual del puntero o el fin del

archivo. Notas Origen SEEK_SET Significado Principio de archivo

SEEK_CUR Posicion actual puntero SEEK_END Final del archivo ftell(f) fwrite(s, i1, i2, f) getc(f) long int int int stdio.h stdio.h stdio.h long int ftell(FILE *f); Devuelve la posicion actual del puntero dentro del archivo f ftell(fichen)

size_t fwrite(const void *p, size_t i1, Escribe i2 elementos, cada uno de tamano 1 num=fwrite(lista,sizeof(char),25,flujo); size_t i2, FILE *f); bytes, desde la cadena s hasta el archivo f int getc(FILE *f); Lee un caracter del archivo f Lee un caracter desde el dispostivo de entrada estandar Lee una cadena de caracteres desde el dispositivo de entrada estandar while(c=getc(fx) !=EOF { print ("%c",c); } int c; while((*c=getchar()) != '\n') print ("%c",c); gets(nombre);

getchar( ) gets(s)

int char(puntero)

stdio.h stdio.h

int getchar(void); char *gets(char *cad);

isalnum(c)

int

ctype.h

int isalnum(int c);

carac=getch(); Determina si el argumento es alfanumerico. if (isalnum(carac)) Devuelve un valor disitinto de cero si es print("%c letra|digito \n",carac); cierto; en otro caso devuelve 0 else printf("%c no letra|digito \n", carac); Determina si el argumento es alfabetico. Devuelve un valor distinto de cero si es cierto; en otro caso devuelve 0. int c; if (isalpha(c)) printf("%c es letra\n",c);

isalpha(c)

int

ctype.h

int isalpha(int c);

isascii(c)

int

ctype.h

int isascii(int c);

Determina si el argumento es un caracter int c; ASCII. Devuelve un valor disitinto de cero si if (isascii(c)) printf('%c es un ascii\n",c) es cierto; en otro caso devuelve 0 Determina si el argumento es un caracter ASCII de control. Devuelve un valor distinto if(iscntrl(c)) printf"%c es un caracter de control\n",c); de cero si es cierto; en otro caso devuelve 0 Determina si el numero es un digito decimal. Devuelve un valor disitinto de cero si es if(isdigit(c)) printf"%c es un digito\n",c); cierto; en otro caso devuelve 0

iscntrl(c)

int

ctype.h

int isacntrl(int c);

isdigit(c)

int

ctype.h

int isdigit(int c);

isgraph(c)

int

ctype.h

int isgraph(int c);

Determina si el argumento es un caracter ASCII grafico (hex 0x21 -0x7e; octal 041 if(isgraph(c)) printf"%c es un caracter imprimible(no -176). Devuelve un valor distinto de cero si espacio)\n",c); es cierto; en otro caso devuelve 0 Determina si el argumento es ua minuscula. Devuelve un valor distinto de cero si es if(islower(c)) printf"%c es una letra minuscula\n",c); cierto; en otro caso devuelve 0 Determina si el argumento es un digito octal. Devuelve un valor distinto de cero si es if(isodigit(c)) printf"%c es un digito octal\n",c); cierto; en otro caso devuelve 0 Determina si el el argumento es un caracter ASCII imprimible (hex 0x20 -0x7e; octal if(isprint(c)) printf("\n"c imprimible\n",c); 040 -176). Devuelve un valor distinto de cero si es cierto; en otro caso devuelve 0 Determina si el argumento es un caracter de puntuacion. Devuelve un valor distinto de if(ispunct(c)) printf"%c es un caracter de puntuacion\n",c); cero si es cierto; en otro caso devuelve 0 Determina si el argumento es un espacio en blanco. Devuelve un valor distinto de cero si if(isspace(c)) printf"%c es un espacio\n",c); es cierto; en otro caso devuelve 0 Determina si el argumento es una mayuscula. Devuelve un valor distinto de cero si es cierto; en otro caso devuelve 0 if(isupper(c)) printf"%c es una mayuscula\n",c);

islower(c)

int

ctype.h

int islower(int c);

isodigit(c)

int

ctype.h

int isodigit(int c);

isprint(c)

int

ctype.h

int isprintint c);

ispunct(c)

int

ctype.h

int ispunct(int c);

isspace(c)

int

ctype.h

int isspace(int c);

isupper(c)

int

ctype.h

int isupper(int c);

isxdigit(c) labs(l) log(d)

int long int double

ctype.h math.h math.h

int isxdigit(int c); long int labs(long int l); double log(double d);

Determina si el argumento es un digito hexadecimal. Devuelve un valor distinto de ifisxdigit(c)) print"%c es un digito hexadecimal\n",c) cero si es cierto; en otro caso devuelve 0 Devuelve el calor absoluto de 1 Devuelve el logaritmo natural de d long lx=-51654,ly; ly=labs(lx); hdouble x,y; x=10; y=log(x); hdouble x,y; x=10; y=log10(x); cadena=malloc(MAX_CHR); double x=2.0, y=4.0, z; z=pow(x,y); //z sera 1.60

log10(d) malloc(u) pow(d1, d2)

double void(puntero) double

math.h stdlib.h math.h

double log10(double d); void *malloc(size_t u); double pow(double d1, double d2);

Devuelve el logaritmno (en base 10) de d Reserva u bytes de memoria. devuelve un puntero al principio del espacio reservado Devuelve d1 elevado a la potencia d2

Escribe datos en dispositivo de salida estandar. Codigo %c printf(...) int stdio.h int printf(const char *formato[,argumento,...]); %d %e %f %s %x putc(c, f) putchar(c) puts(s) int int int stdio.h stdio.h stdio.h int putc(int c, FILE *f); int putchar(int c); int puts(const char *cad) Caracter Entero Decimal Real (double o float), notacion cientifica. Coma flotante Cadena de caracteres Hexadecimal sin signo putc('*',demo); putchar('B'); puts("Desea continuar (s/n); // visualizar 10 numeros aleatorios rand( ) int stdlib.h int rand(void); Devuelve un entero positivo aleatorio for (i=0;i<10;i++) printf("%6d\",rand()); rewind(fx); print("producto %d y %d es %d\n",x,y,x*y); Formato

Escribe un caracter en el archivo f Escribe un caracter en el dispositivo de salida estandar Escribe una cadena de caracteres en el dispositivo de salida estandar

rewind(f)

void

stdio.h

void rewind(FILE *f);

Mueve el puntero al principio del archivo f Lee datos en dispositivo de entrada estandar Codigo %c %d Formato Caracter Enetero Decimal Hexadecimal Entero Decimal Numero Real Octal Puntero Cadena

scanf(...)

int

stdio.h

int scanf(const char *formato {,direccion,...]);

%x %i %f %o %p %s

scanf('%d %f %c %s, &i, &fp, &c, s);

sin(d)

double

math.h

double sin(double d);

Devuelve el seno de d

double x, y; x=0.52; printf('x =%f radianes\n",x); y=cos(x); printf("el coseno de x =%f\n",y); y=sinh(x); printf("%lf",sqrt(25.0); //se visualiza 5 i=strcmp("MNP", "mnp"); // resultado < 0 i=strcmp("abc", "abc"); // resultado = 0 i=strcmp("xy", "abc"); // resultado > 0 char s1[80]="Mayo"; char s2[80]="Octubre"; int j; j=strcmp(s1,s2);

sinh(d) sqrt(d) srand(u)

double double void

math.h math.h stdlib.h

double sinh(double d); double sqrt(double d); void srand(unsigned u);

Devuelve el seno hiperbolico de d Devuelve la raiz cuadrada de d

Inicializa el generador de numeros aleatorios srand(semilla);

strcmp(s1, s2)

int

string.h

int strcmp(const char*s1, const char *s2);

Compara dos cadenas de caracteres lexicograficamente. Devuelve un valor negativo si s1 < s2; 0 si s1 y s2 son identicas; y un valor positivo si s1 > s2

strcmpi(s1, s2)

int

string.h

Compara dos cadenas de caracteres lexicograficamente, sin diferenciar int strcmpi(const char*s1, const char mayusculas de minusculas. Devuelve un *s2); valor negativo si s1 < s2; 0 si s1 y s2 son identicas; y un valor positivo si s1 > s2 Copia la cadena de caracteres s2 en la cadena s1

v=strcmpi(s1,s2);

strcpy(s1, s2)

char

string.h

char *strcpy(char s1, const char s2);

char *s1="Pepe Luis"; char b[12]; strcpy(s2,s1); cout <<s2<< '\n'; longitud=strlen(nombre); char s[81]="Cadena demo'; printf("La longitud de s es: %d\n" strlen(s)); char *cad="----"; strset (cad,'x'); // cad es ahora xxxx

strlen(s)

int

string.h

size_t strlen(const char *s);

Devuelve el numero de caracteres de una cadena Pone todos los caracteres de s a c (excluyendo el caracter nulo del final \0)

strset(c, s)

char(puntero)

string.h

char *strset(char *cad, int c);

system(s) tan(d) tanh(d)

int double double

string.h math.h math.h

system(comd); double tan(double d); double tanh(double d);

Pasa la orden al sistema operativo. Devuelve cero si la orden se ejecuta correctamente; en system(dir); otro caso devuelve un valor distinto de cero, tipicamente -1. Devuelve la tangente de d Devuelve la tangente hiperbolica de d y=tan(x); a=tanh(x);

time(p) toascii tolower toupper

long int int int int

time.h ctype.h ctype.h o stdlib.h ctype.h o stdlib.h

time_t time(time_t *h); int toascii(int c); int tolower(int c); int toupper(int c);

Devuelve el numero de segundos transcurridos despues de un tiempo base designado Convierte el valor del argumento a ASCII Convierte una letra a minuscula Convierte una letra a mayuscula

time(&hora); c=toascii(entero); c=tolower('s'); //c se convierte en 's' c=toupper('s'); //c se convierte en 'S'

Anda mungkin juga menyukai