Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: oscar.cendrero en 25 de Octubre 2015, 10:05
-
Hola,
Me han pedido que haga un programa en C para que "recoja" una palabra en argv[] i vaya eliminado la primera letra de esa palabra hasta que solo quede una. Por ejemplo ./suffix casa
0 casa
1 asa
2 sa
3 a
En el programa hay un doble puntero **suffix y es el que debo utilizar. Tambén piden que utilice gestión de memoria dinámica.
Alguien me puede ayudar? No se por donde empezar...
Gracias
-
Hola Oscar!
Si necesitas las bases del lenguaje C recomendamos el curso http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=82&Itemid=210
El siguiente código es un ejemplo de uso de punteros con cadenas de caracteres en C, puedes usarlo para orientarte en la resolución del problema que comentas:
#include<stdio.h>
int main(){
int i=0,j=0;
char *str1,*str2,*str3;
puts("Introduzca la primera cadena");
gets(str1);
puts("Introduzca la segunda cadena");
gets(str2);
printf("Antes de la concatenación las cadenas son \n");
puts(str1);
puts(str2);
while(*str1){
str3[i++]=*str1++;
}
while(*str2){
str3[i++]=*str2++;
}
str3[i]='\0';
printf("Después de la concatenación tenemos \n");
puts(str3);
return 0;
}
Saludos!