🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
7 messages
7 total messages Started by Ivan Van den Bossche Sun, 16 Mar 2003 20:14
Delphi en C
#5631
Author: Ivan Van den Bossche
Date: Sun, 16 Mar 2003 20:14
19 lines
1686 bytes
Hi,

Ik heb een toepassing in Delphi geschreven die ik wens om te zette naar C.
In de Delphi toepassing maak ik een variable aan:

var
    Buf:array[0..5] of Char;

F:TFileStream;
F:= TFileStream.Create(InFileName, 0);
F.ReadBuffer(Buf, SizeOf(Buf));

Hoe zet ik deze instructies om in C?
Ik heb CreateFile en ReadFile gebruikt maar dit heeft een ander resultaat
van inlezen dan de Delphi instructies. Het lijkt of de ReadFile speciale
codes zoals ik die in de Delphi debugger heb waargenomen niet meeneemt.

Alvast bedankt
Ivan
Re: Delphi en C
#5632
Author: Serve Laurijssen
Date: Sun, 16 Mar 2003 20:24
35 lines
1881 bytes
"Ivan Van den Bossche" <ivan.van.den.bossche@pandora.be> wrote in message
news:yW4da.14679$Vq.927@afrodite.telenet-ops.be...
> Hi,
>
> Ik heb een toepassing in Delphi geschreven die ik wens om te zette naar C.
> In de Delphi toepassing maak ik een variable aan:
>
> var
>     Buf:array[0..5] of Char;
>
> F:TFileStream;
> F:= TFileStream.Create(InFileName, 0);
> F.ReadBuffer(Buf, SizeOf(Buf));
>
> Hoe zet ik deze instructies om in C?

#include <stdio.h>
int main() {

char buf[5];

FILE *fp = fopen(__FILE__, "r");

if (fp) {

fread(buf, sizeof *buf, sizeof buf / sizeof *buf, fp);

fclose(fp);

}

return 0;

}
Re: Delphi en C
#5634
Author: edg
Date: Sun, 16 Mar 2003 22:52
29 lines
1967 bytes
"Ivan Van den Bossche" <ivan.van.den.bossche@pandora.be> schreef in bericht
news:yW4da.14679$Vq.927@afrodite.telenet-ops.be...
> Hi,
>
> Ik heb een toepassing in Delphi geschreven die ik wens om te zette naar C.
> In de Delphi toepassing maak ik een variable aan:
>
> var
>     Buf:array[0..5] of Char;
>
> F:TFileStream;
> F:= TFileStream.Create(InFileName, 0);
> F.ReadBuffer(Buf, SizeOf(Buf));
>
> Hoe zet ik deze instructies om in C?

als je overstapt naar C builder kan je dezelfde vcl gebruiken, schrijfwijze
is dan lichtjes anders.In de helpfile kan je genoeg uitleg vinden

> Ik heb CreateFile en ReadFile gebruikt maar dit heeft een ander resultaat
> van inlezen dan de Delphi instructies. Het lijkt of de ReadFile speciale
> codes zoals ik die in de Delphi debugger heb waargenomen niet meeneemt.
>
> Alvast bedankt
> Ivan
>
>
>
Re: Delphi en C
#5635
Author: Keyser Soze
Date: Mon, 17 Mar 2003 08:50
35 lines
2032 bytes
Ivan Van den Bossche wrote:
> Hi,
>
> Ik heb een toepassing in Delphi geschreven die ik wens om te zette
> naar C. In de Delphi toepassing maak ik een variable aan:
>
> var
>     Buf:array[0..5] of Char;
>
> F:TFileStream;
> F:= TFileStream.Create(InFileName, 0);
> F.ReadBuffer(Buf, SizeOf(Buf));
>
> Hoe zet ik deze instructies om in C?

C zal moeilijk zijn (heeft geen klassen, dus TFileStream bestaat niet),
maar hier is C++:

char buf[6];

TFileStream* F = new TFileStream(InFileName,0);
F->ReadBuffer(buf,sizeof(buf));
delete F;

> Ik heb CreateFile en ReadFile gebruikt maar dit heeft een ander
> resultaat van inlezen dan de Delphi instructies. Het lijkt of de
> ReadFile speciale codes zoals ik die in de Delphi debugger heb
> waargenomen niet meeneemt.
>
> Alvast bedankt
> Ivan

--

Keyser Soze
Re: Delphi en C
#5645
Author: Sjoerd Schreuder
Date: Tue, 18 Mar 2003 01:19
18 lines
1566 bytes
Keyser Soze wrote:
> maar hier is C++:
> 
> char buf[6];
> 
> TFileStream* F = new TFileStream(InFileName,0);
> F->ReadBuffer(buf,sizeof(buf));
> delete F;

Waarom gebruik je new/delete? Dat is hier niet nodig!
Een lokale variabele werkt hier net zo goed en heeft geen
kans op een geheugenlek.

char buf[6];
TFileStream F(InFileName,0);
F.ReadBuffer(buf, sizeof(buf));

Sjoerd Schreuder
Re: Delphi en C
#5646
Author: Serve Laurijssen
Date: Tue, 18 Mar 2003 07:16
19 lines
1969 bytes
"Sjoerd Schreuder" <sa_schreuder@wanadoo.nl> wrote in message
news:3E7674C6.1EA5FC91@wanadoo.nl...
> Keyser Soze wrote:
> > maar hier is C++:
> >
> > char buf[6];
> >
> > TFileStream* F = new TFileStream(InFileName,0);
> > F->ReadBuffer(buf,sizeof(buf));
> > delete F;
>
> Waarom gebruik je new/delete? Dat is hier niet nodig!
> Een lokale variabele werkt hier net zo goed en heeft geen
> kans op een geheugenlek.

Welkom in de wondere wereld van Borland
TFileStream f("");
"E2459 VCL style classes must be constructed using operator new"
Re: Delphi en C
#5647
Author: Sjoerd Schreuder
Date: Tue, 18 Mar 2003 10:52
14 lines
1634 bytes
Serve Laurijssen wrote:
> 
> "Sjoerd Schreuder" <sa_schreuder@wanadoo.nl> wrote in message
> news:3E7674C6.1EA5FC91@wanadoo.nl...
> >
> > Waarom gebruik je new/delete? Dat is hier niet nodig!
> 
> Welkom in de wondere wereld van Borland
> TFileStream f("");
> "E2459 VCL style classes must be constructed using operator new"

Oops. I stand corrected.

Sjoerd Schreuder
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads