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?)
funktiota
4
639
Vastaukset
#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
Porvarimedia: Räsänen vei Lindtmanilta pääministerin paikan
Lisäksi suomalaiset ovat innostuneet tuhlaaman, koska kuluttavat inflaation verran enemmän rahaa. Eikö porvarimedialla572804Ruotsi laskee jälleen bensaveroa, Riikka irvailee tumput suorana
Euron bensa oli persujen vaalilupaus, mutta kohta alkaa olla kolmosella alkavia litrahintoja. Meanwhile in Sverige: "362419SE TAPAHTUI - Pekka Aittakumpu: Avioero
Perussuomalaisten kansanedusta Pekka Aittakumpu käy parhaillaan avioero prosessia. Aittakumpu on siviiliammatiltaan past941970Anita ei saanut Heikkiä pihalle
Kemijärven kaupunginvaltuusto ei tehnyt tietoisesti laitonta päätöstä. Heikki johtaa kaupunginhallitusta yhäkin.851305Martina Aitolehden rinnalla nähty Matias Petäistö yllättää - Uusi aluevaltaus TV:ssä!
Matias Petäistö on tuttu Erikoisjoukot-realityn tiukkana kouluttajana. Hän on myös tuttu näky Martina Aitolehden parina,301139Emotionalisuuden puute.
Joillain ihmisillä ei vain ole sitä "jotain". Heille kaikki täytyisi "vääntää" rautalangasta. Mutta heistä ei vaan o155841Sait mut mies heikoksi
Yllätti tämä asia nyt kyllä. Olet ollut mielessä koko ajan. Ei riitä pelkkä kevät nyt syyksi. Veit jalat alta. Pannaan m80774Ei ole vaikea päättää kumpi
Hän on vaimomateriaalia. Sinä olet vain tuollainen pieni kiusankappale.. Revi siitä.52706Ymmärrätkö jo nyt, että
Vetäytyminen ei kannattanut? Asioista pitäis puhua rauhassa hyvässä hengessä eikä lakasta maton alle. Yhdeltä ihanalt44682- 43665