AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

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

Ein Thema von DGL-luke · begonnen am 26. Apr 2007 · letzter Beitrag vom 26. Apr 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#1

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

  Alt 26. Apr 2007, 18:30
hallo,

folgendes saumäßiges C-Fragment:

Code:
int i;
...

if(!(i%2))
{

}
ich würd das mal übersetzen mit:

if i mod 2 = 0 then stimmt das?

EDIT: vertippselt.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
DGS

Registriert seit: 10. Jul 2004
65 Beiträge
 
Delphi 6 Enterprise
 
#2

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

  Alt 26. Apr 2007, 18:34
Zitat von DGL-luke:
ich würd das mal übersetzen mit:

if i mode 2 = 0 then stimmt das?
beinahe.

if i mod 2 = 0 then So lautet der Befehl richtig. Sonst stimmt es.
Vorschläge für sinnvolle Signatur bitter per PN
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#3

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

  Alt 26. Apr 2007, 18:43
Hätte es jetzt so übersetzt:

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


  end;
end;


Gruß bigg.
  Mit Zitat antworten Zitat
DGS

Registriert seit: 10. Jul 2004
65 Beiträge
 
Delphi 6 Enterprise
 
#4

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

  Alt 26. Apr 2007, 18:46
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.
Vorschläge für sinnvolle Signatur bitter per PN
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#5

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

  Alt 26. Apr 2007, 18:52
In C gibt es keinen boolschen Werte?
Doch: bool!


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

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#6

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

  Alt 26. Apr 2007, 18:52
Man könnte auch if odd(i) then ... schreiben - ist noch einfacher
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#7

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

  Alt 26. Apr 2007, 18:53
Delphi-Quellcode:
asm
and eax 1
jnz @endif
end;
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#8

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

  Alt 26. Apr 2007, 18:56
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

  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#9

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

  Alt 26. Apr 2007, 18:58
Danke euch allen.

@bigg: Ich weiß, dass da Schweinereien passieren, aber die wollt ich jetzt nicht 1 zu 1 in Delphi übernehmen.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#10

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

  Alt 26. Apr 2007, 18:58
Das war mehr oder weniger eine "Zuspitzung" der ganzen anderen Alternativlösungen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:09 Uhr.
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