Cadenas

Páginas: 4 (918 palabras) Publicado: 5 de noviembre de 2015


Cadenas de texto

Introducción

Vamos ahora a ver cómo manejar texto con C. Para empezar, es preciso decir que existe un tipo string como en otros lenguajes, pero no existe un tipo de datosespecífico para almacenar texto, sino que se utilizan arrays de char. Funcionan igual que los demás arrays con la diferencia de que ahora se manejan letras en vez de números. Se les llama cadenas, strings otiras de caracteres y a partir de ahora les llamaremos cadenas.

Para declarar una cadena se hace como en el caso de un array. Por ejemplo, si queremos declarar una cadena de longitud 20 caracteresse haría:

char texto[20];

Al igual que en los arrays, no podemos entonces introducir más de 20 elementos en la cadena. Vamos a ver un ejemplo para mostrar el nombre del usuario en pantalla:

#include

main()
{
char nombre[20];

printf( "Introduzca su nombre (20 letras máximo): " ); scanf( "%s", nombre );
printf( "\nEl nombre que ha escrito es: %s\n", nombre );
}


Obsérvese que en lasentencia scanf no se usa el símbolo & delante de nombre. No hace falta porque se trata de un array, de modo que escribir el nombre del array es equivalente a poner &nombre[0].

También puede llamar laatención sobre la forma de imprimir el array. Con sólo usar %s ya se imprime su totalidad. Ya veremos esto más adelante.

En C no se puede hacer esto:

#include

main()
{

char texto[20];texto = "Hola";

Es interesante saber cómo funciona una cadena por dentro, por eso vamos a ver primero cómo se inicializa:

#include

main()
{
char nombre[] =
"Gandalf";
printf(
"Texto:%s\n", nombre );
printf(
"Tamaño
de la cadena: %i bytes\n", sizeof nombre );
}

Resultado al ejecutar:

Texto: Gandalf

Tamaño de la cadena: 8 bytes

Curiosamente la respuesta nos dice que "Gandalf" ocupa8 bytes. Como cada elemento char ocupa un byte eso quiere decir que la cadena tiene 8 elementos, a pesar de que "Gandalf" sólo cuenta con 7 letras. La razón de esta aparente paradoja estriba en que...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Cadena
  • Cadena
  • cadena
  • Sin cadenas
  • la cadena
  • Cadena
  • cadenas
  • La Cadena

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS