Ahora vamos a ver a este pequeño programaC++: ¿Sobrepone strcat() o mueve el nulo?
char s[20]="One";
strcat(s,"Two");
cout<<s<<endl;
Aquí, en primer s tiene el valor "uno" y para la representación visual este es el valor de s:
O - n - e - \ 0
Luego añadir "dos" al final de la cadena que produce esto:
O - N - e - T - W - O - \ 0
Ahora bien, como se puede ver el único nulo en la cadena al principio fue después de "Uno" ahora es después de "OneTwo"
Mi pregunta es: Es el nulo sobrescrito por la cadena "Dos" y luego agrega su propio nulo al final.
¿O es que el nulo que ya estaba allí al principio retrocedió para volver al final?
(Esta pregunta puede parecer no hacer una diferencia, pero me gustaría saber acerca de todo lo que aprendo)
Gracias
Si está utilizando C++, no hay necesidad de 'strcat'. Use 'std :: string' y' + = '. – Drise