Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Obcinanie do 10 znakow wyrazow i umieszczanie ich w buforze. Język C. Jak to zrobić ?

Ostatnio zmodyfikowano 2015-11-20 14:00
Autor Wiadomość
FocuSsmok
Temat założony przez niniejszego użytkownika
» 2015-11-20 11:26:41
Nie wiem czy to jest dobrze. Zrobiłem buforowanie za pomocą funkcji setvbuf. Tylko teraz jak zwiększać ten bufor kiedy jest za mały ?
P-140423
carlosmay
» 2015-11-20 12:43:47
Ostatni argument jest odpowiedzialny za wielkość bufora.
setvbuf
P-140430
FocuSsmok
Temat założony przez niniejszego użytkownika
» 2015-11-20 14:00:11
Wiem że ostatni argument odpowiada za rozmiar. Tylko nie wiem za bardzo jak go powiększać jeśli jest zbyt mały. Próbowałem zrobić to tak:

while(strlen(gets(wyrazy))>0)

{
setvbuf(plik,wyrazy,_IOFBF,size);

if(fputs(wyrazy,plik)||size>1024)
{
printf("Zwiekszenie bufora");
size=size*2;
}
wyrazy[10]='\0';
fputs("\n",plik);
for (i=0;i<(sizeof wyrazy/sizeof *wyrazy);i++)
{
printf("Element numer %d=%d\n",i,wyrazy[1]);

}
printf("Podaj kolejny lub zakoncz ENTER-em\n");
fflush(NULL);
}

Tylko jak za pierwszym razem wpiszę zbyt długi ciąg znaków to mi wyskakuje błąd lub jak wpisuje na początku zgodne z rozmiarem, a potem wpiszę większy to wyskakuje zwiekszanie bufora. Tylko potem jak znowu wpiszę pierwszy za długi to też wywala błąd. Jakieś pomysły ?
P-140437
1 « 2 »
Poprzednia strona Strona 2 z 2