Hola ornitorrinco, hay 2 posibles soluciones para guardar una cadena de texto (con todo y espacios).
1.- Si es C++ puedes utilizar el tipo std::string de la libreria iostream (si usas el
using namespace std no es necesario incluir std:: antes de la palabra string, por que el tipo string esta dentro del campo de nombres std:
Ejemplo:
CODE
#include<iostream>
using namespace std;
int main()
{
string cadena;
cout<<"Escribe una cadena: ";
cin>>cadena;
cout<<"Escribiste: "<<cadena;
return 0;
}
o
CODE
#include<iostream>
int main()
{
std::string cadena;
std::cout<<"Escribe una cadena: ";
std::cin>>cadena;
std::cout<<endl<<cout"Escribiste: "<<cadena;
return 0;
}
2.- Si solo es C no podras usar string, ya que C no es orientado a objetos, pero bien puedes usar un array (arreglo) de caracteres para formar una cadena, la declararias como:
char[cantidaddecaracteres] nombrevariableEjemplo:
CODE
#include<stdio.h>
int main()
{
char[29] cadena;
printf("Escribe una oracion de maximo 30 caracteres: ");
gets(cadena);
printf("\n\n\nEscribiste %s",cadena);
return 0;
}