En el lenguaje C una cadena de texto se debe simular mediante un arreglo de caracteres, en donde la terminación de la cadena se debe indicar con nulo. Un nulo se especifica como ‘\0’. Por otra parte cuando se quiere declarar un arreglo de caracteres se debe considerar un carácter adicional a la cadena más larga que se guarde. Por ejemplo, si se quiere declarar un arreglo cadena que guarde una cadena con 10 caracteres, se hará de la siguiente manera:
{
Char nombre[20];
Printf (“introdusca su nombre(20 letras máximo) : “) ;
Scanf (“%s”, nombre );
Printf ( “\nEl nombre que ha escrito es: %s\n”, nombre);
}
Esta función requiere de 3 datos o parámetros: nombre, longitud y carácter de fin.
Longitud: la cantidad de caracteres que se podrán introducir en la cadena.
Carácter de fin: carácter que el usuario usara al final de la cadena.
Esta función sirve para leer un carácter del flujo de entrada.
La función cin.get(letra) lee un carácter y lo guarda en letra. Devuelve 0 si el carácter leído es final de archivo. En otro caso devuelve 1.
Esta función sirve para leer uno o más caracteres sin procesar del flujo de entrada.
Esta función sirve para ller una línea desde el archivo de entrada. Lee hasta que encuentra un salto de línea. Esta función es llamada con el nombre de la variable donde queremos guardar la cadena leida.
…
Gets(nombre);
….
Char letra;
…
Letra=getch();
If(letra==’S’)
Cout<<”Ha elegido seguir”;
…
Sirve para leer el siguiente carácter del flujo de entrada. Se le llama sin argumentos y devuelve un entero.
Ahora se presentaran las funciones utilizadas para la manipulación de cadenas con el uso de la librería <string.h>
Este programa lee una cadena de caracteres e imprime por emdio de la función strlen el numero de caracteres tecleado.
#include<string.h>
#include<stdio.h>
#include<conio.h>
void main(void)
{char cadena[80];
clrscr();
printf("Teclea una cadena de maximo 80 caracteres ");
gets(cadena);
printf("La longitud de la cadena que tecleaste es de %d",strlen(cadena));
getch();
}
· Funcion Strcpy
Esta función copia a una cadena otra cadena de caracteres.
Ejemplo:
Este programa, lee una temperatura en grados F y manda un mensaje de acuerdo a la temperatura, el mensaje se copia en una variable y esta solo se imprime al final.
#include<stdio.h>
#include<string.h>
void main(void)
{
Char mensaje[40];
Float temp;
clrscr();
printf("Cual fue la temperatura promedio en øF el dia de hoy");
scanf("%f",&temp);
if (temp<= 60)
strcpy(mensaje,"CASI NOS CONGELAMOS");
else
if(temp<=80)
strcpy(mensaje,"GENIAL PARA DIA DE CAMPO ");
else
if (temp<=100)
strcpy(mensaje,"PARA PASARSELA EN LA ALBERCA");
else
strcpy(mensaje,"COMO PARA ESTAR EN EL CONGELADOR ");
puts(mensaje);
getch();
}
Compara 2 cadenas de caracteres alfabéticamente y regresa un valor entero de acuerdo a la comparación.
Esta función agrega al final de una cadena de caracteres otra cadena de caracteres.
Por ejemplo:
#include<conio.h>
#include<stdio.h>
#include<string.h>
voidmain()
{
Char cadena[80];
clrscr();
printf(“Teclea una cadena”);
gets(cadena);
strcat(cadena,”Agrega al final”);
puts(cadena);
getch();
}
http://www.iqcelaya.itc.mx/~vicente/Programacion/Cadenas.pdf
http://yaqui.mxl.uabc.mx/~eherrera/pcadenas.html
http://gpd.sip.ucm.es/yolanda/ProgI0910/P1-006.pdf
No hay comentarios:
Publicar un comentario