-->
.

domingo, 6 de mayo de 2012

Cadenas de Caracteres (Ejercicio 21)

En post anteriores vimos que las cadenas de caracteres se las define como una arreglo unidimensional de tipo char: char a[15];
que significa un conjunto de caracteres de tamaño 15, este tipo de dato lo vamos a estudiar de manera independiente a los demás datos.
¿Por qué? se preguntarán, pues por la razón que con este dato usamos unas funciones especiales que se las encuentran en la librería string.h, comunmente cuando queremos asignar el valor de una variable a otra, tranquilamente lo hacíamos con el simbolode asignación "=", pero en el caso de una variable que posea una cadena de caracter no es posible eso, estudiaremos brevemente unas de las funciones mas usadas.

strcpy(cadena1,cadena2);
Esta función nos permite asignar los datos de caracter2 a carcter1, sirve como el asignación para variables numéricas.

strcmp(cadena1,cadena2)==0;
Nos permite ver si una cadena de caracter es igual a otra, diferencia las mayusculas y minusculas, si queremos ver si es diferente seria strcmp(cadena1,cadena2)!=0; y se las usa como condiciones, dentro de las estructuras condicionales y repetitivas.

strcmpi(cadena1,cadena2)==0;
Realiza casi la misma función que strcmp(); pero la diferencia es que esta función no realiza diferencias entre las mayusculas y minusculas.

strlen(cadena);
Esta función permite calcular el tamaño en números enteros de la cadena.

strncat(cadena1,cadena2,num_carac);
Esta función nos permite agregarle un numero especifico de caracteres a cadena1 de cadena2 al final, num_carac es la variable numérica que controla cuantos caracteres se le va a agregar.

strncmp(cadena1,cadena2,n);
Saca comparaciones de los primeros "n" caracteres de las cadenas.

strncpy(cadena1,cadena2,n);
Copia los primeros 'n' caracteres de la cadena2 a la cadena1.

Programa 21:
Combinacion de algunas de las funciones de cadenas de caracter.

  1. #include<string.h>
  2. #include<stdio.h>
  3. #include<conio.h>
  4. void main()
  5. {
  6.  clrscr();
  7.   char *l,*l2,*l3;
  8.   int n;
  9.   printf("Palabra 1: ");
  10.    fflush(stdin);
  11.   scanf("%[^\n]",l);
  12.   printf("Palabra 2: ");
  13.   fflush(stdin);
  14.   scanf("%[^\n]",l2);
  15.   printf("Palabra 3: ");
  16.   fflush(stdin);
  17.   scanf("%[^\n]",l3);
  18.   printf("Numero: ");
  19.   scanf("%d",&n);
  20.   printf("\nstrncat\n%s",strncat(l3,l2,n));
  21.   printf("\nstrlen\n%d",strlen(l));
  22.   printf("\nstrncpy\n%s\n",strncpy(l,l3,n));
  23.   printf("\nstrncmp\n");
  24.   if(strncmp(l,l2,n)==0)
  25.   printf("Igual");
  26.   else
  27.   printf("Diferente");
  28.  getch();
  29. }

0 comentarios:

Publicar un comentario

Suscribirse

Popular Posts

Followers