Saludos, soy bien nuevo en el mundo de la programacion y actualmente en la universidad estoy viendo punteros los cuales he visto muy poco....quisiera saber si me pudieran dar una idea con punteros de como podria realizar un programa que reciba una cadena y la imprima invertida, no puedo utilizar strlen, stcpy, strcat.
Muchas Gracias por adelantado
Pues yo también estoy aprendiendo así que me he echo yo el programita para practicar, aquí te pego la chapuza de otro novato en el tema
#include <stdio.h>
int main() {
static char cadena[100], cadinv[100];
char *pcad = cadena;
char *pfin = NULL, *pinv = cadinv;
int n = 0, i = 0;
puts("cadena: ");
gets(pcad);
while(*(pcad+n))
n++;
n--;
pfin = pcad + n;
while(pfin - pcad)
{
*(pinv + i) = *pfin;
i++;
pfin--;
}
*(pinv + i ) = *pfin;
puts(pinv);
return 0;
}
Yo lo he planteado así:
un puntero pcad que apunta al inicio de la cadena, otro puntero pfin que apuntará al final de la cadena, y después otro llamado pinv que apunta al nuevo array de caracteres que contendrá la cadena invertida.
Entonces una vez que tienes la dirección del final de la cadena, es recorriendo caracter a caracter y copiandolo al array cadinv apuntado por pinv, hasta que que llegues al inicio de la cadena.
Espero haberte ayudado.
Un saludo