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
590
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
Kiky-maksuista valehtelu persujen törkein vaalipetos
Perusduunarina koen pahimmaksi persujen vaalipetokseksi "työmies" Putkosen lupaaman työntekijöiltä perittävien kiky-maks805950Persujen kannatusromahdus ilahduttaa
Siin' ei hyvä häviä. Luotto parempaan tulevasuuteen alkaa taas palautua.1364369Onko Sdp:n romahdus pienpuolueeksi alkanut?
Mikään puolue ei kykene selviytymään loputtomasti, jos sitä repii jatkuvasti sisäiset ristiriidat ja kyvyttömyys päättää1153715- 1333110
Avopuoliso, mies-/naisystävä vai mikä?
Kävin eilen irl keskustelun, joka jätti minut pohtimaan seuraavaa ... millä nimityksellä kutsua henkilöä, jonka kanssa o1802784En malta odottaa, että Lindtman pääsee suhmuroimaan pääministerinä
kun pitää sopeuttaa 10 miljardin edestä, ja eläkkeisiinkin voidaan puuttua Antin mielestä. (Demarien kannattajissa suuri762654Riikka ohoi! Saksa alensi bensaveroa, missä euron bensa?
Perussuomalaisten yksi vaalilupauksista oli euron bensiini suomalaisille autoilijoille. Ei ole näkynyt. Jopa vasemmis52625Huvittava ilmiö: Vasemmistolaiset uskoo sokeasti SDP:n parantavan heidän
elämäänsä, jos demarit johtaa seuraavaa hallitusta (Kyse on siis palstan vasemmistolaisista) Totuus on toinen, nimittäi652516Pitkän päivän ilta
Tarina elämättömästä miehestä, jonka elämän täytti velvollisuudentunto. Pikkutarkka, huolellinen, hyvällä katsottu, miel1242256Totuus sattui demareihin, vaativat asiallisen jutun poistoon
ja oli vielä suosittu, mutta kun demarit tarpeeksi valittivat, niin poistettiin. Raukkamaista toimintaa. Eli siis juttu491917