Originariamente inviato da gianpa
...
non si può fare in modo che c sia una copia di x
...
No ... gli array sono passati per riferimento e non per copia ...

...
un esempio:
...

inserendo come input:

stringa prova

L'output di questo programma è:

6

invece dovrebbe essere 12...
Intanto, per ottenere il valore, devi scrivere

cout<<i;

e otterresti 7 e non 6.

In ogni caso, il problema e' determinato dalla

cin>>s;

che assegna alla stringa solamente la parte dell'input fino al primo terminatore che e' lo spazio. Quindi alla variabile s sara' assegnata la parola

stringa

e sara' terminata prima dello spazio (ecco perche' trovi il null al posto dello spazio).
Devi usare la getline per prelevare tutta la linea, cioe'

cin.getline(s, 100);