Views
2 years ago

Apéndice F

Apéndice F

apenf.qxd 26/11/99 14:17

apenf.qxd 26/11/99 14:17 Página 620620 PROGRAMACIÓN EN C++. ALGORITMOS, ESTRUCTURAS Y OBJETOSlfind#include void * lfind(const void k, const void *b, size_t *num, size_tanchura, int(*comparar)(const void*, const void*));La función lfind() realiza una búsqueda lineal de valor de k (clave) enun array de un número específico de elementos, cada uno de un número fijode bytes de longitud. Al contrario que bsearch(), el array no necesitaestar ordenado. lfind() devuelve un puntero al primer elemento del arrayque coincide con la clave; si la clave no existe en el array, se devuelve un 0.int comp(const void*, const void *); resultado = (char **)lfind(palabrabuscada, envp, &cuenta, sizeof(char*), comp);Funciones relacionadas: bsearch, lsearch, qsort.lsearch#include void * lsearch(const void *k, const void *a, size_t *n, size_t W,int(*comparar) (const void*, const void *));La función lsearch realiza una búsqueda lineal de la clave k. Elarray a contiene n elementos de anchura W. La función comparar se utilizapara comparar la clave con el elemento actual del array. Al contrarioque bsearch(), en la función lsearch() el array no tiene que estarordenado. lsearch() devuelve un puntero al primer elemento del arrayque se corresponde con la clave. Si no existe la clave en el array, sedevuelve 0 y un registro se añade al array con un valor de k.La diferencia entre lsearch() y lfind() es que lsearch() añadiráun registro al final del array con un valor de la clave si ese registro no se haencontrado en el array.Funciones relacionadas: bsearch, lfind, qsort.qsort#include void qsort(void a, size_t n, size_t w, int(*comparar) (const void*,const void*));La función qsort ordena un array con un número dado de elementosutilizando el método de ordenación rápida quicksort (creado por C.A.R.Hoare). El número de elementos de array es n y el tamaño (en bytes) de cadaelemento es w. La función comparar se utiliza para comparar un elementodel array con la clave; devuelve los siguientes valores:Valor devueltoNegativoCeroPositivoCondiciónPrimer elemento (elem1) menor que el segundo (elem2).Los dos elementos son idénticos.Primer elemento mayor que el segundo.Ordenar la lista de enteros y visualizar el resultado.#include #include int comparar(const void*, const void *);int numeros[10] = {4,5,7,3,12,8,6,1,0,2};main(void){int i;}printf(“lista original:”);for(i =0; i < 10; i++)printf(“%d”, numeros[i]);qsort(numeros,10,sizeof(int), comparar);printf(“lista ordenada:”);for(i = 0; i < 10; i++)printf(“%10, numeros[i]);return 0;// comparar enteroscomparar(const void *i, const void *j){return ((int *)i) – ((int *) j)}Funciones relacionadas: bsearch, lfind, lsearch.F.4.FUNCIONES DE CADENAC no tiene el tipo de datos cadena (string). En su lugar, las cadenas se tratancomo arrays de caracteres, cada uno de los cuales ocupa un byte. Por notaciónel final de una cadena en C se representa por un byte que contiene un carácternulo (´\0´). Las cadenas pueden ser declaradas como arrays de caracteres.char cad[20], cad 5[] = “Hola Mortimer”;

apenf.qxd 26/11/99 14:17 Página 621BIBLIOTECA DE FUNCIONES ESTÁNDAR ANSI/ISO C++ Y BORLAND C++ 5.0 621Acceso a las cadenasstrchr#include A las cadenas se accede directamente a través de su índice, como en elejemplo anterior, o bien a través de un puntero.char cad5[] = “Hola Mortimer”;char *p_cad5;p_cad5 = cad5;Se puede también declarar e inicializar una cadena a la vez:char *p_cad5 = “Hola Mortimer”;El archivo de cabecera contiene numerosas funciones quemanipulan cadenas.stpcpy#include char *stpcpy(char *cad1, const char *cad2);La función stpcpy() copia una cadena en otra. Devuelve un puntero alfinal de la cadena copiada. Se devuelve el valor de cad1+strlen(cad2)stpcpy(orden_dos, “DIR”);stpcpy(caad1, cad2);Funciones relacionadas: strcat, strcpy, strncat, strncpy, strdup.strcatchar *strcat(char *cad1, const char cad2);#include strcat() concatena (añade) cad1 al final de cad2, terminando la cadenaresultante con un carácter nulo (\0).char nombre[80] = “Bob”;char blanco[2] = “”;char ultimo[80] = “Marley”;...strcat(nombre,blanco); // blanco se concatena a nombrestrcat(nombre,ultimo); // ultimo se concatena a nombre// la cadena nombre será “Bob Marley”Funciones relacionadas: strcpy, strdup, strncat, strncpy.char *strchr(const char *cad, int c);strchr() encuentra la primera aparición de c en cad y devuelve unpuntero a la primera aparición de c en cad. Si c no se encuentra, devuelveun cero (NULL).printf(“%s”, strchr(“Salario mensual = $85725”, ´$´));visualizará $85725char *s[81] = “Esta es una cadena de prueba”;char *ptr;ptr = strchr(s, ´a´);el valor almacenado en ptr es un puntero a la primera aparición de ´a´.strcmpint strcmp(const char *a, const char *b);Compara una cadena con otra. Los resultados serían:> 0 si a > b= 0 si a == b< 0 si a < bi = strcmp(“MNP”, “mnp”); // resultado < 0i = strcmp(“abc”, “abc”); // resultado = 0i = strcmp(“xy”, “abc”); // resultado > 0char s1[80] “ “Mayo”;char s2[80] = “Octubre”;int j;j = strcmp(s1, s2);#include Funciones relacionadas: strcmpi, stricmp, strnicmp, strncmp.strcmpi#include int strcmpi(const char *cad1, const char * call2);Compara una cadena con otra sin diferenciar entre mayúsculas y minúsculasy devuelve un entero:

Apéndice B. Estadísticas estudiantiles - Universidad El Bosque
Apéndice A. Organigrama Institucional - Universidad El Bosque
APÉNDICE - Seminario de Educación Superior de la UNAM
¿debería incluirse en el Apéndice II? - IWMC World Conservation Trust
Apéndice D. Estadísticas Financieras - Universidad El Bosque
Contenido del apéndice - Stenhouse Publishers
Apéndice Tesis relevantes - Suprema Corte de Justicia de la Nación
Galileo envenenado (apéndice y actividades) - Anaya Infantil y Juvenil
Apéndice 7 Manual del Usuario SIBISEP - Sepdf.gob.mx
CITES 2013: Nuevos tiburones incluidos en el Apéndice III (PDF)
Apéndice E. Estadísticas de infraestructura - Universidad El Bosque
Apéndice Estadístico PSDSH-2011-2016.pdf - Secretaría de ...
F. Biblioteca de funciones estándar ANSI/ISO C++
PERSONAL DE LA ENCUESTA APÉNDICE F - Measure DHS
Apéndice de las Especificaciones para Motores de Izaje para ...
METODOLOGÍA. Apéndice adicional
Apéndice A: Vectores - Laser.uvigo.es