Manejo de cadenas en C
Esta ocasion veremos algo muy basico de manejo de cadenas (strings) en c.
Para empezar, una cadena se compone de varios caracteres, osea que una cadena es un vector de caracteres, por lo que en C para declarar una cadena se hace de las siguientes formas:
char cadena[size];//Solo se declara la cadena char cadena[size]="El valor de la cadena"; //Aqui la cadena se inicializa
Donde:
Char: Es el tipo de dato, en este caso caracter.
cadena: Nombre de la variable.
size: Es el tamaño del vector de caracteres
Y ahora que tengo una cadena declarada como ingreso datos en ella???… pues facil se pueden asignar datos desde la declaracion como lo vimos anteriormente o se puede usar la funcion gets(cadena); que guardara por teclado la cadena escrita hasta que se presione enter y lo guardara en la variable cadena.
Despues para acceder a los datos de la cadena podemos desplegarlos con un
printf("La cadena es: %s";,cadena);
en este caso el tipo de dato sera %s (string), pero a mi no me gusta usar printf(); asi que uso
cout<<"La cadena es: "<<cadena;
Y otra funcion muy util, que nos servira para saber el numero de caracteres que contiene la cadena, incluyendo los espacios, regresa la longitud total de la cadena.
strlen(cadena);
Hoy traigo dos ejemplos donde se usan estas funciones.
#include
#include
#include
#include
char cadena[20];
void getstring(char nombre[]);
void main(){
clrscr();
cout<<" Cual es tu nombre? ";
gets(cadena);
getstring(cadena);
getch();
}
void getstring(char nombre[]){
cout<<"n Hola "<<nombre;
cout<<"n La cadena tiene "<<strlen(nombre)<<" caracteres";
}
y el otro
#include
#include
#include
#include
char nombre[20],direccion[20],tel[20],numcuenta[20],grupo[20],salon[20],promedio[20];
void getData();
void printData();
void main(){
clrscr();
cout<<"ttFicha de datos de un alumno de la upiitan";
cout<<"n Introduce tus datosnn";
getData();
clrscr();
cout<<"n Tus datos son:n";
printData();
getch();
}
void getData(){
cout<<" Cual es tu nombre? ";
gets(nombre);
cout<<" Cual es tu direccion? ";
gets(direccion);
cout<<" Cual es tu telefono? ";
gets(tel);
cout<<" Cual es tu numero de cuenta? ";
gets(numcuenta);
cout<<" Cual es tu grupo? ";
gets(grupo);
cout<<" Cual es tu salon? ";
gets(salon);
cout<<" Cual es tu promedio? ";
gets(promedio);
}
void printData(){
cout<<"n Nombre: "<<nombre;
cout<<"n Direccion: "<<direccion;
cout<<"n Telefono: "<<tel;
cout<<"n Numero de cuenta: "<<numcuenta;
cout<<"n Grupo: "<<grupo;
cout<<"n Salon: "<<salon;
cout<<"n Promedio: "<<promedio;
}




