#include <stdio.h>
#include <string.h>
int main()
{
char cadena[] = "Hola, mundo";
int longitud = strlen(cadena);
printf("%s\n", cadena);
printf("La cadena tiene una longitud de %d caracteres", longitud);
return 0;
}Una cadena no es otra cosa que un arreglo de caracteres de tipo char
#include <stdio.h>
#include <string.h>
int main()
{
char cadena[] = {'H','o','l','A',',',' ','m','u','n','d','o','\0'};
printf("%s\n", cadena);
cadena[3]='a';
printf("%s\n", cadena);
return 0;
}Una cadena no es otra cosa que un arreglo de caracteres de tipo char
Lo anterior quiere decir que podemos operar con una cadena (casi) como lo hacíamos con los arreglos...
#include <stdio.h>
#include <string.h>
int main()
{
char cadena1[50] = "Hola, ";
char cadena2[] = "mundo";
char cadena3[50];
int igual = 0;
strcat(cadena1, cadena2);
printf("%s\n\n", cadena1);
strcpy(cadena3, cadena1);
printf("%s\n\n", cadena3);
igual = strcmp(cadena1, cadena2);
printf("La comparación entre cadena1 y cadena2 es: %d\n\n",igual);
igual = strcmp(cadena1, cadena3);
printf("La comparación entre cadena1 y cadena3 es: %d\n\n",igual);
return 0;
}Una cadena no es otra cosa que un arreglo de caracteres de tipo char
Lo anterior quiere decir que podemos operar con una cadena (casi) como lo hacíamos con los arreglos...
... y que podemos usar funciones específicas para cadenas
#include <stdio.h>
#include <string.h>
int main()
{
char *cadena1 = "Yo también soy una cadena";
char cadena2[27];
int igual = 0;
printf("%s\n", cadena1);
printf("%s\n", cadena2);
printf("-----------------\n");
if (cadena1 == cadena2)
{
printf("Las dos cadenas son iguales\n");
}
else {
printf("Las dos cadenas son distintas\n");
}
printf("-----------------\n");
strcpy(cadena2, cadena1);
printf("%s\n", cadena1);
printf("%s\n", cadena2);
printf("-----------------\n");
if (cadena1 == cadena2)
{
printf("Las dos cadenas son iguales\n");
}
else {
printf("Las dos cadenas son distintas\n");
}
printf("-----------------\n");
igual = strcmp(cadena1, cadena2);
printf("La comparación entre cadena1 y cadena2 es: %d\n",igual);
if (igual == 0)
{
printf("Las dos cadenas son iguales\n");
}
else {
printf("Las dos cadenas son distintas\n");
}
return 0;
}¿Qué sucede en el ejemplo anterior?
Pueden leer más de la documentación de la librería en términos técnicos o, si lo prefieren, en términos más accesibles