Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   C-Übersetzg: if(!(i%2)) (https://www.delphipraxis.net/90971-c-uebersetzg-if-i2.html)

DGL-luke 26. Apr 2007 18:30


C-Übersetzg: if(!(i%2))
 
hallo,

folgendes saumäßiges C-Fragment:

Code:
int i;
...

if(!(i%2))
{

}
ich würd das mal übersetzen mit:

Delphi-Quellcode:
if i mod 2 = 0 then
stimmt das?

EDIT: vertippselt.

DGS 26. Apr 2007 18:34

Re: C-Übersetzg: if(!(i%2))
 
Zitat:

Zitat von DGL-luke
ich würd das mal übersetzen mit:

Delphi-Quellcode:
if i mode 2 = 0 then
stimmt das?

beinahe.

Delphi-Quellcode:
if i mod 2 = 0 then
So lautet der Befehl richtig. Sonst stimmt es.

bigg 26. Apr 2007 18:43

Re: C-Übersetzg: if(!(i%2))
 
Hätte es jetzt so übersetzt:

Delphi-Quellcode:
var i: Integer;
begin
  if not(i mod 2) then
  begin
    {...}


  end;
end;


Gruß bigg.

DGS 26. Apr 2007 18:46

Re: C-Übersetzg: if(!(i%2))
 
Die Übersetzung wäre 1zu1 übersetzt. Delphi könnte da aber Probleme mit dem Typ Integer <-> Boolean bekommen. Habs allerdings noch nicht getestet wir er in if Abfragen auf integer reagiert.

Hintergrund ist, dass es in C einfach keinen Boolean gibt. Da gibt es nur die integer. 0 steht für false, alles andere für true.

bigg 26. Apr 2007 18:52

Re: C-Übersetzg: if(!(i%2))
 
In C gibt es keinen boolschen Werte? :shock:
Doch: bool!


PS: Mein Beispiel von oben funktioniert nicht ganz, müsste noch eine Bedingung mit ran gestellt werden.

jfheins 26. Apr 2007 18:52

Re: C-Übersetzg: if(!(i%2))
 
Man könnte auch if odd(i) then ... schreiben - ist noch einfacher :stupid:

3_of_8 26. Apr 2007 18:53

Re: C-Übersetzg: if(!(i%2))
 
Delphi-Quellcode:
asm
and eax 1
jnz @endif
end;

Meflin 26. Apr 2007 18:56

Re: C-Übersetzg: if(!(i%2))
 
Zitat:

Zitat von 3_of_8
Delphi-Quellcode:
asm
and eax 1
jnz @endif
end;

Jaaa... genau sowas sucht man, wenn man auf der Suche nach einer Delphi-Übersetzung ist :wall:


DGL-luke 26. Apr 2007 18:58

Re: C-Übersetzg: if(!(i%2))
 
Danke euch allen.

@bigg: Ich weiß, dass da Schweinereien passieren, aber die wollt ich jetzt nicht 1 zu 1 in Delphi übernehmen.

3_of_8 26. Apr 2007 18:58

Re: C-Übersetzg: if(!(i%2))
 
Das war mehr oder weniger eine "Zuspitzung" der ganzen anderen Alternativlösungen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:55 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz