You are on page 1of 6

Funciones de manejo de cadenas

Nombre de función descripción Sintaxis


strcpy: La función #include<stdio.h>
strcpy se #include<string.h>
encuentra int main()
en la {
biblioteca char texto1[]="corta";
<string.h> y char texto2[]="mediana";
se utiliza char texto3[]="larguisima";
para copiar
strcpy(texto2,texto1);
una cadena printf("%s\n",texto2);
de strcpy(texto2,texto3);
caracteres printf("%s\n",texto2);
(fuente) en getch();
return 0;
el lugar que
}
ocupaba
otra
(destino).
Esta copia
es
destructiva,
o sea, que
todos los
caracteres
que
estaban en
la cadena
destino
desaparece
n, aunque
la cadena
destino
fuera más
larga que la
cadena
fuente .La
cadena
destino se
pone como
primer
argumento
de la
función y la
cadena
fuente
como
segundo
strcat: : En el #include<stdio.h>
programa #include<string.h>
int main()
anterior {
vimos que char texto1[]="Don Pepito";
la función char texto2[]=" y ";
strcpy es char texto3[]="Don
desctructiv Jose";printf("%s\n",texto1);
a, pero hay
strcat(texto1,texto2);
otra printf("%s\n",texto2);
función en strcat(texto1,texto3);
la librería printf("%s\n",texto2);
<string.h> getchar();
return 0;
que copia
}
una cadena
(fuente) en
otra
(destino)
sin destruir
ésta, es
decir, que
copia una
cadena
detrás de la
otra esta
función es
conocida
como
strcat.

strlen: esta #include <stdio.h>


función #include <string.h>
#include <conio.h>
devuelve el #define MAXLON 80
total
(entero) de int main(void)
caracteres {
que char a[MAXLON+1];
int longitud;
conforman
una cadena clrscr();
(excluyend printf ("Introduce una cadena (max. %d
o el caracteres): ", MAXLON);
scanf("%s",&a);
caracter longitud = strlen(a);
nulo \0). printf ("\nLongitud de la cadena: %d\n",
longitud);
getch();
return 0;
}

strcmp: strcmp #include <stdio.h>


(abreviatur #include <string.h>
int main()
a de {
((string char s1[6] = "Abeja";
comparison char s2[6] = "abeja";
))). La int i;
función
printf( "s1=%s\t", s1 );
strcmp
printf( "s2=%s\n", s2 );
recibe dos
cadenas, a i = strcmp( s1, s2 );
y b, printf( "s1 es " );
devuelve if( i < 0 ) printf( "menor que" );
else if( i > 0 ) printf( "mayor que" );
un entero.
else printf( "igual a" );
El entero printf( " s2\n" );
que resulta
de efectuar return 0;
la llamada }
strcmp(a,
b) codifica
el resultado
de la
comparació
n:

isalnum(caracter): devuelve #include <stdio.h>


cierto (un #include <ctype.h>
entero
cualquiera int main()
distinto de {
cero) si char cadena[] = ";0sR(h&R1/";
caracter es int i;
una letra o
dígito, y for(i = 0; cadena[i]; i++)
falso (el printf("%c, %d\n", cadena[i], isalnum(cadena[i]));
valor
entero 0) return 0;
en caso }
contrario.

isalpha(caracter): devuelve #include <stdio.h>


cierto si #include <ctype.h>
caracter es
una letra, y int main()
falso en {
caso char cadena[] = ";0sR(h&R1/";
contrario. int i;

for(i = 0; cadena[i]; i++)


printf("%c, %d\n", cadena[i], isalpha(cadena[i]));

return 0;
}

isblank(caracter): devuelve SBLANCO(valor)


cierto si
 valor: hace referencia a la celda que se comprobará si
caracter es un está vacía.
espacio en
blanco o un  ESBLANCO devuelve VERDADERO si valor está vacío o
hace referencia a una celda vacía y FALSO si contiene
tabulador.
datos o hace referencia a datos.

isdigit(caracter) devuelve public static boolean isDigit(char ch)


cierto si
caracter es un
digito, y falso
en caso
contrario.
isspace(caracter): devuelve int isspace(int c);
cierto si
caracter es un
espacio en
blanco, un
salto de línea,
un retorno de
carro, un
tabulador,
etc., y falso
en caso
contrario.

islower(caracter): devuelve int islower(int c);


cierto si
caracter es
una letra
minúscula, y
falso en caso
contrario.

isupper(caracter): devuelve /* isupper example */


cierto si #include <stdio.h>
caracter es #include <ctype.h>
una letra int main ()
mayúscula, y {
falso en caso int i=0;
contrario. char str[]="Test String.\n";
char c;
while (str[i])
{
c=str[i];
if (isupper(c)) c=tolower(c);
putchar (c);
i++;
}
return 0;
}
toupper(caracter) devuelve la int toupper(int ch);
: mayúscula
asociada a
caracter, si la
tiene; si no,
devuelve el
mismo caracter.

tolower(caracter) ): devuelve la int tolower(int ch);


: minúscula
asociada a
caracter, si la
tiene; si no,
devuelve el
mismo caracter.