cecce88
08-06-2008, 17:53
GNU nano 2.0.6 File: realloc.c
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
main()
{ char *str,x,i=0,j;
str=(char *)malloc(sizeof(char));
printf("Vediamo se funziona: ");
while(x!='!')
{ x=getchar();
if (x!='!')
{
str=(char *)realloc(str,str+1);
str[i]=x;
i++; }
}
str[i]='\0';
for(j=0;j<i;j++)
{ printf("%c ",str[j]);
}
}
Ho provato ad utilizzare la realloc in maniera tale che ogni volta che inserisco un carattere la realloc mi permette di aumentare la stringa di un carattere! Ma in esecuzione nn funziona!
Sapete cosa sbagliO?
Mi sa che ho capito!
realloc(str, i+1) e non realloc(str,str+1)..confermate?
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
main()
{ char *str,x,i=0,j;
str=(char *)malloc(sizeof(char));
printf("Vediamo se funziona: ");
while(x!='!')
{ x=getchar();
if (x!='!')
{
str=(char *)realloc(str,str+1);
str[i]=x;
i++; }
}
str[i]='\0';
for(j=0;j<i;j++)
{ printf("%c ",str[j]);
}
}
Ho provato ad utilizzare la realloc in maniera tale che ogni volta che inserisco un carattere la realloc mi permette di aumentare la stringa di un carattere! Ma in esecuzione nn funziona!
Sapete cosa sbagliO?
Mi sa che ho capito!
realloc(str, i+1) e non realloc(str,str+1)..confermate?