Una forma de hacerlo sería esta:
Código:
#include <iostream>
#include <string>
using namespace std;
int main (void)
{
string s;
cin.getline((char*)s.c_str(), 256);
cout << s.c_str();
system("PAUSE");
return 0;
}
cin lee (segun su estado y sus flags) numeros, caracteres (un byte) y cadenas, por esa razón tiene una función llamada getline que podemos usar para leer una linea completa (incluyendo varias palabras).
cout permite empujar un array de caracteres y en ese caso escribe todo lo que haya en el, si le pasas un string escribira sola la primera cadena.