Cadenas de caracteres

Anuncio
Fundamentos de Informática 1ºIIND
Cadenas de caracteres
Conceptos básicos
Las cadenas de caracteres en C se declaran como vectores de tipo char.
int vec_num[100];
char cadena[100];
//vector de números enteros
//cadena de caracteres
El acceso a los elementos (letras) de una cadena de caracteres es análogo al acceso en el caso
de vectores de números:
vec_num[7]=456;
cadena[7]='F';
Las cadenas de caracteres utilizan un caracter especial (el caracter NULL, que se escribe '\0')
para indicar el final de la cadena.
cadena[0]='H';
cadena[1]='o';
cadena[2]='l';
cadena[3]='a';
cadena[4]-'\0';
En cualquier momento se puede conocer la longitud de una cadena mediante un bucle while que
busque el caracter '\0';
i=0;
while (cadena[i]!='\0') {
i++;
}
/* la longitud de la cadena (número de letras) es i
*/
Funciones estándar de entrada y salida #include <stdio.h>
Funciones de lectura
scanf("%s",cadena); //lee una palabra
scanf("%c",&ch); //lee un caracter (ignorando espacios y cambios de linea '\n')
ch=getchar(); //lee un caracter del teclado.
ch=getc(stdin); //lee un caracter del teclado.
ch=fgetc(stdin); //lee un caracter del teclado.
gets(cadena);
//lee una frase hasta fin de linea
fgets(cadena, N, stdin); //lee una frase con control de tamaño. También lee '\n'
Escritura:
printf("%s",cadena); //escribe una cadena (frase o palabra) por pantalla
puts(cadena); //escribe una cadena, igual que printf
printf("%c",ch); //escribe un caracter por pantalla
Funciones estandar de cadena de caracteres #include <string.h>
size_t strlen( char *str ); //devuelve la longitud de la cadena
strcpy( char *to, char *from );
int strcmp(char *s1, char *s2 );
//copia o inicializa
// compara las cadenas s1 y
//
=0 cuando s1 es igual
//
<0 cuando s1 es menor
//
>0 cuando s1 es mayor
s2
a s2
que s2
que s2
Rafael Palacios 2005
Descargar