/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
readfile - derefter write to file?? ANSI C~
Fra : !G!


Dato : 15-01-02 20:38

Hej

Jeg har lavet en program der først læser en fil (i dette tilfælde sin egen
*.c fil)
Dette kommer ud på skærmen.

Derefter opretter den en txt fil med navnet "wow.txt".
Denne skal overskrives med den læste tekst.
Men hvad skrives der på xxx's plads for at få hele textfilen (tekst.c) ind
i wow.txt filen.??

VH
!G!

kode:
--------------------------------------------------------------------------kl
ip
#include <stdio.h>
#include <conio.h>


int main ()
{
FILE *writetofile, *readfile;
int ch;

readfile = fopen ("tekst.c", "r");
writetofile = fopen ("wow.txt", "w+");

if (readfile==NULL)
{
printf("Filen blev ikke fundet, kontakt sys.admin");
return 0;
}
while ((ch=fgetc(readfile)) !=EOF)
{
fputc(ch,stdout);
}
fclose(readfile);

if (writetofile)
{
fprintf(writetofile,xxx);
}
fclose(writetofile);


getch();
return 1;
}
----------------------------------------------------------------------------
-klip



 
 
Byrial Jensen (15-01-2002)
Kommentar
Fra : Byrial Jensen


Dato : 15-01-02 22:43

!G! <gugge@email.dk> skrev:
> Hej
>
> Jeg har lavet en program der først læser en fil (i dette tilfælde sin egen
> *.c fil)
> Dette kommer ud på skærmen.
>
> Derefter opretter den en txt fil med navnet "wow.txt".
> Denne skal overskrives med den læste tekst.
> Men hvad skrives der på xxx's plads for at få hele textfilen (tekst.c) ind
> i wow.txt filen.??

Skriv teksten til filen på samme måde som du skriver til skærmen,
brug blot strømmen "writefofile" i stedet for "stdout". Du kan
tilføje en ekstra fputc() i den første løkke, eller evt. spole
"readfile" tilbage (brug f.eks. rewind() til dette) efter den
første løkke og læse den en gang til.

Der er for øvrigt ikke noget som hedder conio.h eller getch i
ANSI C.

!G! (15-01-2002)
Kommentar
Fra : !G!


Dato : 15-01-02 22:50

Tak for svar, men er lidt uforstående over din sidste <statement>

Der er for øvrigt ikke noget som hedder conio.h eller getch i
> ANSI C.

Det virker underligt, jeg får undervisning i ANSI C af en fyr der har sit
eget firma i KBH og har
lavet c programmering i 14 år.
Det er selvfølgelig fra ham jeg har fået den c-viden jeg har nu. (kun 7 dg
indtil videre)

Men vi bruger da dagligt både conio.h og getch med stor fornøjelse....

Men nu ved jeg ikke hvad der er korrekt, men endnu engang tak for svar.

!G!



Martin Moller Peders~ (16-01-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 16-01-02 00:11

In <Cu118.547$Eu2.32527@news010.worldonline.dk> "!G!" <gugge@email.dk> writes:

>Tak for svar, men er lidt uforstående over din sidste <statement>

>Der er for øvrigt ikke noget som hedder conio.h eller getch i
>> ANSI C.

>Det virker underligt, jeg får undervisning i ANSI C af en fyr der har sit
>eget firma i KBH og har
>lavet c programmering i 14 år.
>Det er selvfølgelig fra ham jeg har fået den c-viden jeg har nu. (kun 7 dg
>indtil videre)

Du returnerer ogsaa 1 ved ok og 0 ved fejl. Den er lige praecis omvendt.
En main-metode skal returnerer 0 ved ingen fejl og et tal>0 ved en fejl.

/Martin



Byrial Jensen (16-01-2002)
Kommentar
Fra : Byrial Jensen


Dato : 16-01-02 08:35

!G! <gugge@email.dk> skrev:
> Tak for svar, men er lidt uforstående over din sidste <statement>
>
>> Der er for øvrigt ikke noget som hedder conio.h eller getch i
>> ANSI C.
>
> Det virker underligt, jeg får undervisning i ANSI C af en fyr der har sit
> eget firma i KBH og har
> lavet c programmering i 14 år.

Så er det ikke ANSI C han underviser i, men formodentlig en eller
anden implementation af C (dvs. en bestemt C-oversætter) som
omfatter mere en ANSI C.

Det er helt normalt at C-oversættere har egne udvidelser i forhold
til standarden, men man bør være forsigtig med at bruge dem da det
de vil gøre ens program uportabelt. En god undervisning bør som
minimum fortælle hvornår man bevæger sig ud over standarden.

Sloth (16-01-2002)
Kommentar
Fra : Sloth


Dato : 16-01-02 08:51

Undskyld, jeg har misforstået det.
Det er rigtigt som i siger: conio.h og getch er ikke ansi c, men derimod et
produkt fra Borland. Jeg undkylder min uvidenhed.....

!G!

_______


"Byrial Jensen" <bjensen@nospam.dk> skrev i en meddelelse
news:slrna4ab92.1an.bjensen@ask.ask...
> !G! <gugge@email.dk> skrev:
> > Tak for svar, men er lidt uforstående over din sidste <statement>
> >
> >> Der er for øvrigt ikke noget som hedder conio.h eller getch i
> >> ANSI C.
> >
> > Det virker underligt, jeg får undervisning i ANSI C af en fyr der har
sit
> > eget firma i KBH og har
> > lavet c programmering i 14 år.
>
> Så er det ikke ANSI C han underviser i, men formodentlig en eller
> anden implementation af C (dvs. en bestemt C-oversætter) som
> omfatter mere en ANSI C.
>
> Det er helt normalt at C-oversættere har egne udvidelser i forhold
> til standarden, men man bør være forsigtig med at bruge dem da det
> de vil gøre ens program uportabelt. En god undervisning bør som
> minimum fortælle hvornår man bevæger sig ud over standarden.



Sloth (16-01-2002)
Kommentar
Fra : Sloth


Dato : 16-01-02 09:04

Forresten:
> Du kan tilføje en ekstra fputc() i den første løkke <

Det var lige det der manglede tak for hjælp.
BTW: Sloth = !G!, da jeg skriver fra en computer på mit kursus, og ikke min
hjemmepc....

Tak for hjælp.





Morten Brix Pedersen (15-01-2002)
Kommentar
Fra : Morten Brix Pedersen


Dato : 15-01-02 22:58

!G! wrote:

> #include <conio.h>


ANSI C har ikke denne header.

- Morten.


R. A. Larsen (16-01-2002)
Kommentar
Fra : R. A. Larsen


Dato : 16-01-02 10:47

"!G!" <gugge@email.dk> wrote:
>
> Tak for svar, men er lidt uforstående over din sidste <statement>
>
> > Der er for øvrigt ikke noget som hedder conio.h eller getch i
> > ANSI C.

conio.h er en DOS-udvidelse til ANSI C

Under hjælpen til getch i Turbo C, står der:
Portability:
+ DOS - UNIX - Windows - ANSI C - C++ Only +
¦ Yes ¦ ¦ ¦ ¦ ¦
+------------------------------------------+

Derimod findes der en funktion (det er egentlig en macro, men det virker som
en funktion), der hedder getchar() i stdio.h:
Portability:
+ DOS - UNIX - Windows - ANSI C - C++ Only +
getchar ¦ Yes ¦ Yes ¦ ¦ Yes ¦ ¦
putchar ¦ Yes ¦ Yes ¦ Yes ¦ Yes ¦ ¦
+------------------------------------------+

De virker næsten ens, men getch() læser direkte fra tastaturet, mens getchar()
læser fra "standard input" (normalt, men ikke altid, tastaturet).

> Det virker underligt, jeg får undervisning i ANSI C af en fyr der har sit
> eget firma i KBH og har
> lavet c programmering i 14 år.

Han har sikkert lavet mange C programmer til DOS, og kun få til *nix (herunder
Linux, AT&T UNIX, diverse udgaver af BSD, m.fl.).

MVH, René
--
Using Virtual Access
http://www.vamail.com


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste