Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Hmm warum macht der delphi aufruf nicht was er soll? (https://www.delphipraxis.net/45717-hmm-warum-macht-der-delphi-aufruf-nicht-er-soll.html)

Kedariodakon 11. Mai 2005 10:37


Hmm warum macht der delphi aufruf nicht was er soll?
 
Mein Aufruf:
Delphi-Quellcode:
Dive := IfThen( ( MemberFix = 0 ), $0f, ( $0f / MemberFix ) );
Sobald MemberFix 0 ist ( die Abfrage ist dann auch True), gibt es genau an der Stelle eine Exception wegen Gleitkommadivision durch 0... :wall:

Aber ratet mal warum ich den Aufruf drinn habe... :angel2:

Was is falsch woran liegts?
Ich kann auch nicht in den Code Reintracern...

Bye

Steve 11. Mai 2005 10:41

Re: Hmm warum macht der delphi aufruf nicht was er soll?
 
Hi,

ich vermute mal, dass der übergebene Wert berechnet wird, egal ob true oder false...

Gruß
Stephan :dance:

Bernhard Geyer 11. Mai 2005 10:43

Re: Hmm warum macht der delphi aufruf nicht was er soll?
 
Ist ja klar: IfThen ist eine Funktion und da müssen vor dem Aufruf der Funktion alle Aufrufparameter vorliegen, auch dein $0F/0. Wenn Delphi Makros können würde ...

Must also doch eine normale if-Abfrage machen:
Delphi-Quellcode:
if MemberFix = 0 then
  Dive := $0F
else
  Dive := $0F / MemberFix;

Kedariodakon 11. Mai 2005 10:45

Re: Hmm warum macht der delphi aufruf nicht was er soll?
 
Zitat:

Zitat von Bernhard Geyer
Ist ja klar: IfThen ist eine Funktion und da müssen vor dem Aufruf der Funktion alle Aufrufparameter vorliegen, auch dein $0F/0. Wenn Delphi Makros können würde ...

Must also doch eine normale if-Abfrage machen:
Delphi-Quellcode:
if MemberFix = 0 then
  Dive := $0F
else
  Dive := $0F / MemberFix;

FuFu hast recht, man bin ich bedeppert heut morgen, der berechnet die ja vorm Funktionseintritt :drunken:

Bye


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:40 Uhr.

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