caracteres
Programación
Pedro Reina
Una cadena es un conjunto ordenado de caracteres, el modo de manejar texto en programación.
Muchos lenguajes contemplan las cadenas como un tipo dedatos básico, y ofrecen métodos específicos para manejarlas.
Sin embargo, en C las cadenas son simplemente arrays de tipo
. Eso no quiere decir que
manejar cadenas en C sea más difícil que con otroslenguajes. Simplemente, es distinto.
En C las cadenas siempre tienen un carácter más de los que se ven: el carácter que tiene el número
0 en la tabla de caracteres, llamado carácter nulo o NULL, quese representa
(no hay que confundirlo con el carácter que representa al numeral 0, que es el número 48). Así pues, la cadena
"Hola" realmente se representa en memoria como
, ocupando cinco octetos,y no
cuatro como podría parecer más normal.
En C se manejan cadenas de dos tipos diferentes: constantes y variables. Las primeras no se pueden modificar, y el compilador reserva automáticamentememoria para ellas. Las segundas son modificables, pero el programador debe reservar memoria suficiente para almacenarlas.
Los dos tipos se pueden manejar simultáneamente utilizando punteros, pero esatécnica no
se va a explicar en este curso, por ser una característica avanzada de C y no ser suficientemente general.
Basta escribir el texto entre comillas dobles. Por ejemplo:
El modo más sencilloes declarar una variable como array de
un lugar extra para el carácter nulo. Ejemplo:
.
, recordando que hay que reservar
Existen muchas funciones de librería que ayudan en el manejo decadenas, la mayor parte se declaran en el fichero de cabecera
. Por ejemplo, la función
da la longitud de la cadena
sin contar el carácter nulo, la función
copia una cadena en otra, etc.
El siguienteprograma pide una cadena al usuario y la muestra invertida:
$
!
%&
$
-* #
"
"
$
%$
*#
3
! "
#
'
#
$
-
#
()
,
*
+ % #
'
#
..
$
- 01*0#
#
/ /...
Regístrate para leer el documento completo.