Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/06/2010, 13:10
Avatar de Mercality
Mercality
 
Fecha de Ingreso: junio-2010
Mensajes: 19
Antigüedad: 14 años, 5 meses
Puntos: 0
Cadenas de caracter y concatenación

Hola, tengo un ejercicio el cual dice que debo leer varias variables y meterlas a una cadena de caracter. El ejemplo es este:

Nombre1
Nombre2
Apellido1
Apellido2

Una vez leidos, debo unir nombre1 y nombre1 en una sola cadena llamada nombres, luego lo mismo con los apellidos. Y por ultimo unir los nombres y los apellidos en otra cadena.

Hasta ahora esto es lo que he podido hacer
Código C:
Ver original
  1. #include <stdio.h>
  2. #include <string>
  3. #include <conio.h>
  4.  main () {
  5.      char nombre1[10],nombre2[10],apellido1[10],apellido2[10],nombres[20],apellidos[20],nombrec[40];
  6.    
  7.      printf("Diga el primer nombre:\n");
  8.      gets(nombre1);
  9.      
  10.      printf("Diga el segundo nombre:\n");
  11.      gets(nombre2);
  12.      
  13.      strcat(nombre1, nombre2);
  14.      strcat(nombres, nombre1);
  15.      printf("Los nombres son: %s", nombres);
  16.      getch();
  17.      
  18.      }

Mis interrogantes son:
1) Como declaro las variables char[] sin especificar un numero? Osea, que al leer la cadena insertada, esta misma lo ajuste. O sino, como vaciar los espacios que no este usando una vez que inserte el nombre.
2) Existe otra manera de concatenar Sin usar "strcat"? Y que las concatene de una vez a la nueva cadena.?
3) Por ultimo, como dejar un espacio entre dos cadenas una vez concatenadas? Osea, una vez contenados nombre1 y nombre2, que al imprimir no salga "ramonledezma" sino "Ramon Ledezma" o "Ramon,Ledezma"

Perdon si son muchas preguntas... Espero puedan ayudarme.