funktiota

Ninni_

Mun harkkatyö on kohta tehty ja häivyn täältä kyselemästä tyhmiä, yhden jos vielä kestätte.

Olisiko olemassa gets-funktiota vastaava funktio, joka lukisi käyttäjän syöttämän rivin suoraan tiedostoon? *turha toivo?*

(Onhan siis niin, että gets ei välitä, vaikka luettu rivi olisi pitempi kuin muistitila, johon sen arvon yrittää tunkea, vaan pahassa tapauksessa se jatkaa tallettamista sujuvasti taulukon ylikin?)

4

403

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • #include

      fputs - int fputs(const char *s, FILE *stream);

      fputs() writes the string s to stream, without its trailing '\0'.

      • Ninni_

        Tarkotin sellasta, joka lukis stdinistä suoraan tiedostoon... kun haluisin välttää sen, että mun char[]-muuttuja loppuu kesken jos käytän getsiä.

        :/


      • hjelppi
        Ninni_ kirjoitti:

        Tarkotin sellasta, joka lukis stdinistä suoraan tiedostoon... kun haluisin välttää sen, että mun char[]-muuttuja loppuu kesken jos käytän getsiä.

        :/

        ###################################

        libc:tä käyttäen


        #include
        #include

        #define BUFSIZE 8192

        int main(int argc, char *argv[])
        {
        char buf[BUFSIZE];
        FILE *fd;

        fd = fopen("file2.txt", "w ");

        while ( fgets(buf, BUFSIZE, stdin) != NULL) {
        fputs(buf, fd);
        }

        exit(0);
        }

        ####################Alustana linukka:

        #include
        #include
        #include
        #include
        #include
        #include

        #define BUFSIZE 8192

        int main(int argc, char *argv[])
        {
        int fd_out, n;
        char buf[BUFSIZE];

        fd_out = open("file.txt", O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IRGRP | S_IROTH);

        while ( (n = read(STDIN_FILENO, buf, BUFSIZE)) != 0) {
        write(fd_out, buf, n);
        }

        exit(0);
        }


        Tapa kaksi:


      • Ninni_
        hjelppi kirjoitti:

        ###################################

        libc:tä käyttäen


        #include
        #include

        #define BUFSIZE 8192

        int main(int argc, char *argv[])
        {
        char buf[BUFSIZE];
        FILE *fd;

        fd = fopen("file2.txt", "w ");

        while ( fgets(buf, BUFSIZE, stdin) != NULL) {
        fputs(buf, fd);
        }

        exit(0);
        }

        ####################Alustana linukka:

        #include
        #include
        #include
        #include
        #include
        #include

        #define BUFSIZE 8192

        int main(int argc, char *argv[])
        {
        int fd_out, n;
        char buf[BUFSIZE];

        fd_out = open("file.txt", O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IRGRP | S_IROTH);

        while ( (n = read(STDIN_FILENO, buf, BUFSIZE)) != 0) {
        write(fd_out, buf, n);
        }

        exit(0);
        }


        Tapa kaksi:

        Voi kiitos. Eiköhän noilla. :)


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Uskallanko vielä kaivata sinua?

      Siitä on niin kauan aikaa. Harmi, kun kaikki meni niin kuin meni. Elämässä oli aika raskasta silloin, ja näen sen sinun
      Ikävä
      42
      9365
    2. T:ltä J-miehelle

      Se kaunein jäi välillämme kokematta Sen olisin halunnut kokea. Miten olisit pitänyt mua hyvänä. Sen yhden kerran. Se oli
      Ikävä
      33
      2101
    3. Missä meetwursti on keksitty?

      Tapasin hiljattain erikoisen rouvan Prisman leikkelehyllyjen välissä pälyilemässä. Kun tulin kohdalle, rouva alkoi raivo
      Ruoka ja juoma
      27
      1820
    4. Terveiset kaipauksen kohteelle

      tähän alle 👇👇👇 !!
      Ikävä
      135
      1611
    5. Miksi kirjoittelet sinkut-palstalla?

      Olet sinkku? Kaipaat jutteluseuraa? Täällä on kivoja keskusteluja? Tapaat mielenkiintoisia ihmisiä? Joku muu syy?
      Sinkut
      195
      1184
    6. Miten se pihvi pitää oikeaoppisesti paistaa?

      Törmäsin erikoiseen episodiin eräässä ABC-ravintolassa. Pysähdyin kahvikupilliselle ja kohta ravintolan toisesta nurkast
      Ruoka ja juoma
      8
      1139
    7. Kumpiko kaivatussasi

      teki suhun vaikutuksen äly vai ulkonäkö?
      Ikävä
      71
      1107
    8. 92
      952
    9. Mikä kaivatussasi

      kiehtoo?
      Ikävä
      49
      865
    10. Haluatko että

      Rikotaan vähän lisää jäätä tai jotain muuta
      Ikävä
      78
      850
    Aihe