Microsoft Visual Studio , C + + Builder o cualquier otro compilador C + +
Mostrar más instrucciones
1
Crear un nuevo proyecto o espacio de trabajo utilizando el C + + lenguaje de su preferencia en Microsoft Visual Studio 2010 . Abra Visual Studio , haga clic en "Archivo" y luego " Nuevo proyecto ". Cuando aparezca el cuadro de diálogo nuevo proyecto, elija C + + , Win32 y Aplicación de consola Win32. Dar el nombre de " Reversión ", luego haga clic en " Siguiente" y " Aceptar " hasta que aparezca el archivo de origen
2
Añadir " incluye " declaraciones en la parte superior del archivo de la siguiente manera : .
# include # include declarar la función inversa de la siguiente manera : Esta función lee la cadena de caracteres a partir de la dirección de memoria almacenada en "txt " y luego lo copia en el orden inverso a la memoria a la que apunta " newTxt . " La función asume que hay suficiente memoria se ha asignado a la nueva cadena Crear un puntero de caracteres "c" de la siguiente manera : . Char * c = txt + strlen (txt ) ; El puntero de caracteres "* c " no es más que un lugar para almacenar una dirección de memoria . Inicializarlo mediante la recuperación de la dirección de "txt ", a continuación, añadir la longitud de la cadena de texto Copia el texto con el siguiente bucle "while" : . While ( c > txt ) { c - ; newTxt * = * c ; newTxt + + ; } Mueva el " c " puntero retroceder un carácter ( se inicializa un carácter más allá del final de la cadena de texto ) . Una vez que tenga el último carácter , copiarlo en el primer carácter de la nueva cadena como la que apunta " newTxt . " Avanzar en la " newTxt " puntero hacia adelante un carácter . La segunda vez , copie el siguiente-a- la - último carácter de la cadena " txt " para el segundo carácter de la cadena " newTxt " . Esto continúa hasta llegar de nuevo al principio Añadir un cero al final de la cadena " newTxt " y terminar la función * newTxt = 0 , . . En C + +, todas las cadenas de texto termina con un cero binario Agregue el código para probar la función de la siguiente manera : . int _tmain ( int argc, _TCHAR * argv [ ] ) { char * txt = " Cuatro cuentas y hace siete años ..." ; char * newTxt ; newTxt = (char *) malloc ( strlen (txt ) 1 ) ; inversa ( txt, newTxt ) ; printf ("% s \\ n", newTxt ) ; return 0; } variables se llaman igual que en la función para evitar confusiones. El " malloc " función asigna memoria para la cadena " newTxt " , la función se llama . A continuación , imprima la nueva cadena en la consola , y luego liberar la memoria asignada por " malloc ". Para probar el programa en Visual Studio , haga clic en F5.
3
< p > void inversa ( char * txt, char * newTxt ) {
4
5
6
< p >}
7
< p > libre ( newTxt ) ;