Buenas, alguien me podría explicar una linea del siguiente programa. El programa imprime la inversa de una cadena, por ejemplo la inversa de Juan seria nauJ.
#include <stdio.h> #include <string.h> void reverse(char * str, char *rts, int len) { int num=len; str=str+len-1; while (num!=0){ *rts++=*str--; num--; } *rts=''; printf("La cadena invertida es: %s \n", rts); } int main() { char cadena[80]="Juan"; printf("La cadena es %s: \n", cadena); char aux[80]; int len=strlen(cadena); reverse(cadena, aux, len); printf("Cadena invertida es: %s", aux); }
La parte que me confunde es esta linea
str=str+len-1;
Que es lo que esta haciendo exactamente? conozco el uso de puntero, pero esta linea me confunde, alguien podría explicarme. Gracias!!