Académique Documents
Professionnel Documents
Culture Documents
AULA:
FECHA:
28 Julio 2014
NRC:
4258
FUNDAMENTOS DE PROGRAMACIN
TTULO:
Librera string.h
Constantes y tipos
NOMBR
E
NULL
DESCRIPCIN
size_t
Funciones
NOMBRE
S
DESCRIPCIN
memcpy
memmo
ve
memchr
memcmp
memset
strcat
strncat
strchr
strrchr
strcmp
strncmp
strcoll
strcpy
strncpy
strerror
strlen
strspn
strcspn
strpbrk
strstr
strtok
strxfrm
strrev
NOMB
RE
DESCRIPCIN
ESPECIFICACIN
strdup
strcpy s
mempc
py
GNU
memcc
py
UNIX 98?
strerror
Anlogo a strerror_r(thread-safe)
r
GNU, POSIX
strlcpy
originalmenteOpenBSD,
actualmente
tambinFreeBSD, Solaris, OS X
strtok r
POSIX
strsign
al
Anlogamente a strerror,
devuelve la cadena
representacin de la
sealsig (no thread safe)
Cadena de Caracteres
Ejemplos:
#include <stdio.h>
#include <string.h>
char completo [80];
char nombre[32] = "Pedro";
char apellidos [32] = "Medario Arenas";
main()
{
/* Construye el nombre completo */
strcpy ( completo, nombre );
strcat ( completo, " ");
strcat ( completo, apellidos );
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char *cadena = "Una cadena C++ termina con cero";
cout << "La cadena: [" << cadena << "] tiene "
<< {f:strlen}(cadena) << " caracteres" << endl;
return 0;
}
Funcin strcpy()
Copia una cadena en otra.
Sintaxis:
char *strcpy(char *dest, const char *orig);
Copia la cadena orig a dest, la copia de caracteres se detendr cuando sea
copiado el carcter nulo.
Valor de retorno:
strcpy devuelve el puntero dest.
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char *cadena = "Cadena ejemplo";
char cad[32];
cout << strcpy(cad, cadena) << endl;
cout << cad << endl;
return 0;
}
Funcin strcmp()
Compara dos cadenas.
Sintaxis:
int strcmp(char *cad1, const char *cad2);
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.
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char
char
char
char
*cadena1
*cadena2
*cadena3
*cadena4
=
=
=
=
Funcin strcat()
Aade o concatena una cadena a otra.
Sintaxis:
char *strcat(char *dest, const char *orig);
strcat aade una copia de orig al final de dest. La longitud de la cadena
resultante ser strlen(dest) + strlen(orig).
Valor de retorno:
strcat devuelve un puntero a la cadena concatenada.
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char *cadena1 = "Cadena de";
char *cadena2 = " ejemplo";
char cadena3[126];
strcpy(cadena3, cadena1);
cout << strcat(cadena3, cadena2) << endl;
return 0;
}
Funcin strncpy()
Funcin strncmp()
Compara dos porciones de cadenas.
Sintaxis:
int strncmp(char *cad1, const char *cad2, size_t maxlong);
Compara las dos cadenas igual que strcmp, pero slo se comparan los
primeros maxlong caracteres.
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char *cadena1
char *cadena2
char *cadena3
char *cadena4
=
=
=
=
Funcin strncat()
Aade o concatena una porcin de una cadena a otra.
Sintaxis:
char *strncat(char *dest, const char *orig, size_t maxlong);
strncat aade como mximo maxlong caracteres de la cadena orig al final de
dest, y despus aade el carcter nulo. La longitud de la cadena resultante
ser strlen(dest) + maxlong.
Valor de retorno:
strncat devuelve un puntero a la cadena concatenada.
Ejemplo:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char *cadena1 = "Cadena de";
char *cadena2 = " ejemplo";
char cadena3[126];
strcpy(cadena3, cadena1);
Funcin strtok()
Busca dentro de una cadena conjuntos de caracteres o smbolos (tokens)
separados por delimitadores.
Sintaxis:
char *strtok(char *s1, const char *s2);
strtok considera la cadena s1 como una lista de smbolos separados por
delimitadores de la forma de s2.
La primera llamada a strtok devuelve un puntero al primer carcter del
primer smbolo de s1 e inserta un carcter nulo a continuacin del smbolo
retornado. Las siguientes llamadas, especificando null como primer
argumento, siguen dando smbolos hasta que no quede ninguno.
El separador, s2, puede ser diferente para cada llamada.
Valor de retorno:
strtok devuelve un puntero al smbolo extrado, oNULL cuando no quedan
smbolos.
Ejemplo:
#include <cstring>
#include <iostream>
using namespace std;
int main() {
char entrada[32] = "abc,d,efde,ew,231";
char *p;
// 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;
}
Bibliografa
a. http://programacion1-teoria.wikispaces.com/Lenguaje+C
b. http://teoria-de-programacion.globered.com/categoria.asp?idcat=33
c. http://c.conclase.net/curso/?cap=006#inicio
d. http://www.taringa.net/posts/ciencia-educacion/15391497/C--Declaracion-de-variables.html
e. http://ccodigo.wordpress.com/tag/string-h/
f. http://sopa.dis.ulpgc.es/fso/cpp/intro_c/introc53.htm
g. http://fcqi.tij.uabc.mx/usuarios/cgaxiola/prog_p7.pdf
h. http://es.wikipedia.org/wiki/String.h
i. http://arduino.cc/en/pmwiki.php?n=Tutorial/TextString
j. http://c.conclase.net/curso/?cap=902f