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
626
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
Suomessa on meneillään boomereiden kosto
1990-luvun lamassa osumaa saaneet sukupolvet toivovat sen jälkeen syntyneille sukupolville kärsimystä porvareita äänestä202188Petteri Orpon kommentti persujen väkivaltaan?
Hiirenhiljaa taas on, kun Tampereella persulahkon ääriosasto pahoinpiteli kantasuomalaisen tytön. Missä on pääministeri251572- 861352
Onko sinulla jalostettu koira? Nämä tekijät altistavat koiran sairastumiselle
Moni Suomessa suosittu koirarotu on sairas ulkonäkökeskeisen jalostuksen ja ääripiirteiden vuoksi. Erityisesti tietyt t201350Anabaptismin kirous
Uudestikastetut lahkolaiset joutuvat valheen kierteeseen. He joutuvat herjaamaan lapsena saamaanssa kastetta nimeen Isä4171062- 105925
Pelolla pakottaminen
Kristinusko on tuovinaan valoa ja toivoa, mutta ensin pitää olla pimeyttä ja toivottomutta jotta joku valoa ja toivoa ha624896Robotiikka korvaa tulevaisuudessa seurustelusuhteet
Haluan herättää keskustelua aiheesta. Asiantuntijoiden mukaan robottien kehitys on 10-15 vuoden päässä siitä että voidaa224826kamera hakokylässä
kamera kuvaamassa yleistä tietä laittomasti ristauksessa hakokylä-raatevaara!11664- 10660