Tarkoituksena olisi lukea virtaa siihen saakka, että seuraava merkki on JOKO välilyönti ' ' tai piste '.' mutta miten saisin tuohon CHAR:n sisällytettyä nuo kaksi eri merkkiä?
Ja ei nyt sitten mitään "käyttäisin mielummin sitä ja tätä..."
Ja ei nyt sitten mitään "käyttäisin mielummin sitä ja tätä..."
Vastaukset 3
Vanhimmat
int getline(FILE *fp, int lim)
{
int i=0, c;
while (--lim > 1 && (c = fgetc(fp)) != EOF && c != ' ' && c != '.')
s[i ] = c;
s[i] = '\0';
return i;
}
KORJAUS: tossa toi s otetaan osoitteena mukaan,
eikä oleteta et se on globaali muuttuja.
int getline(FILE *fp, char s[], int lim)
{
int i=0, c;
while (--lim > 1 && (c = fgetc(fp)) != EOF && c != ' ' && c != '.')
s[i ] = c;
s[i] = '\0';
return i;
}
käyttö esim.
char s[1000];
getline(stdin, s, 1000);
vähän turhan monimutkaselta näyttää.. kokeilen ehkä jotain muuta