NOMBRE: ¿? AULA: BLOQUE C SANGOLQUI C304 FECHA: 28 – Julio – 2014 NRC: 4258 FUNDAMENTOS DE PROGRAMACIÓN TÍTULO: Librería “ string.h “ C pone a nuestra disposición una librería centrada en el tratamiento de cadenas, la librería string.h, es un archivo de la Biblioteca estándar del lenguaje de programación C que contiene las funciones y tipos de utilidad para trabajar con cadenas de caracteres. Con ella podremos realizar prácticamente cualquier tipo de operación con cadenas. También cuenta con procedimientos para manejar memoria. Las funciones declaradas en string.h se han hecho muy populares, por lo que están garantizadas para cualquier plataforma que soporte C. Además, las funciones para cadenas de caracteres sólo trabajan con conjuntos de caracteres ASCII o extensiones ASCII compatibles. Constantes y tipos NOMBRE DESCRIPCIÓN
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
NOMBRE: ¿?AULA: BLOQUE C SANGOLQUI C304FECHA: 28 – Julio – 2014NRC: 4258
FUNDAMENTOS DE PROGRAMACIÓN
TÍTULO: Librería “ string.h “
C pone a nuestra disposición una librería centrada en el tratamiento de cadenas, la librería string.h, es un archivo de la Biblioteca estándar del lenguaje de programación C que contiene las funciones y tipos de utilidad para trabajar con cadenas de caracteres. Con ella podremos realizar prácticamente cualquier tipo de operación con cadenas. También cuenta con procedimientos para manejar memoria.
Las funciones declaradas en string.h se han hecho muy populares, por lo que están garantizadas para cualquier plataforma que soporte C. Además, las funciones para cadenas de caracteres sólo trabajan con conjuntos de caracteres ASCII o extensiones ASCII compatibles.
Constantes y tipos
NOMBRE DESCRIPCIÓN
NULL Macro que representa la constante puntero nulo; representa un valor de puntero que no apunta a ninguna dirección válida de objeto alguno en memoria
size_t Tipo entero sin signo (positivo); es el tipo devuelto por el operador sizeof
memcpy Copia n bytes entre dos áreas de memoria que no deben solaparse
memmove Copia n bytes entre dos áreas de memoria; al contrario que memcpy las áreas pueden solaparse
memchr Busca un valor a partir de una dirección de memoria dada y devuelve un puntero a la primera ocurrencia del valor buscado o NULL si no se encuentra
memcmp Compara los n primeros caracteres de dos áreas de memoria
memset Sobre escribe un área de memoria con un patrón de bytes dado
strcat Añade una cadena al final de otra
strncat Añade los n primeros caracteres de una cadena al final de otra
strchr Localiza un carácter en una cadena, buscando desde el principio
strrchr Localiza un carácter en una cadena, buscando desde el final
strcmp Compara dos cadenas alfabéticamente ('a'!='a')
strncmp Compara los n primeros caracteres de dos cadenas numéricamente ('a'!='a')
strcoll Compara dos cadenas según la colación actual ('a'=='A')
strcpy s Variante de strcpy que verifica los límites ISO/IEC WDTR 24731
mempcpyVariante de memcpy que devuelve un
puntero al byte siguiente al último byte escrito
GNU
memccpy Variante de memcpy que para al encontrar un byte determinado UNIX 98?
strerror r Análogo a strerror_r(thread-safe) GNU, POSIX
strlcpy Variante de strcpy que verifica los límites originalmenteOpenBSD, actualmente tambiénFreeBSD, Solaris, OS X
strtok r Versión thread-safe destrtok POSIX
strsignalAnálogamente a strerror, devuelve la
cadena representación de la señalsig (no thread safe)
BSDs, Solaris, Linux
Cadena de Caracteres
Una cadena es un conjunto de caracteres, el cual cada caracter se encuentra en una posición determinada dentro de la cadena. Se puede utilizar una cadena general o una cadena fija de un número determinado de caracteres, estas se declaran en el siguiente formato:
Ejemplo:
char* var_cadena; // declaración de una cadena de hasta 255 caracteres
char cadena[N]; // declaración de una cadena de N caracteres
Compara las dos cadenas, si la cad1 es mayor que cad2 el resultado será mayor de 0, si cad1 es menor que cad2, el resultado será menor de 0, si son iguales, el resultado será 0.
La comparación se realiza carácter a carácter. Mientras los caracteres comparados sean iguales, se continúa con el siguiente carácter. Cuando se encuentran caracteres distintos, aquél que tenga un código ASCII menor pertenecerá a la cadena menor. Por supuesto, si las cadenas son iguales hasta que una de ellas se acaba, la más corta es la menor.
Copia maxlong caracteres de la cadena orig a dest, si hay más caracteres se ignoran, si hay menos se rellenará con caracteres nulos. La cadena dest no se terminará con nulo si la longitud de orig es maxlong o más.
strncat añade como máximo maxlong caracteres de la cadena orig al final de dest, y después añade el carácter nulo. La longitud de la cadena resultante será strlen(dest) + maxlong.
Valor de retorno:
strncat devuelve un puntero a la cadena concatenada.
strtok considera la cadena s1 como una lista de símbolos separados por delimitadores de la forma de s2.La primera llamada a strtok devuelve un puntero al primer carácter del primer símbolo de s1 e inserta un carácter nulo a continuación del símbolo retornado. Las siguientes llamadas, especificando null como primer argumento, siguen dando símbolos hasta que no quede ninguno.
El separador, s2, puede ser diferente para cada llamada.
Valor de retorno:
strtok devuelve un puntero al símbolo extraído, oNULL cuando no quedan símbolos.
// La primera llamada con entrada p = strtok(entrada, ","); if(p) cout << p << endl;
// Las siguientes llamadas con NULL while(p) { p = strtok(NULL, ","); if(p) cout << p << endl; } return 0;}
Bibliografía
a. http://programacion1-teoria.wikispaces.com/Lenguaje+Cb. http://teoria-de-programacion.globered.com/categoria.asp?idcat=33c. http://c.conclase.net/curso/?cap=006#iniciod. http://www.taringa.net/posts/ciencia-educacion/15391497/C---