Double gemoppelt?
Verfasst: Di Jul 20, 2010 12:16 am
http://proggen.org/doku.php?id=theory:t ... =revisions
@nufan: Wieso klammerst Du double(x) zu (double)(x)?
@nufan: Wieso klammerst Du double(x) zu (double)(x)?
Ich habe nicht gewusst, dass man Casts auch ohne Klammern schreiben kann - und gcc stimmt mir zuXin hat geschrieben:@nufan: Wieso klammerst Du double(x) zu (double)(x)?
Code: Alles auswählen
#include <stdio.h>
int main()
{
int start = 10, end = 2, freq = 5;
double result = double (start - end) / double (freq); // Zeile 7
printf ("%lf\n", result);
return 0;
}
Folgendes funktioniert wie es soll:main.c:7: error: expected expression before ‘double’
Code: Alles auswählen
double result = (double) (start - end) / (double) freq;
Frag mal g++ ^^nufan hat geschrieben:Ich habe nicht gewusst, dass man Casts auch ohne Klammern schreiben kann - und gcc stimmt mir zuXin hat geschrieben:@nufan: Wieso klammerst Du double(x) zu (double)(x)?
Ich habe es nicht mehr geändert, weil double(x) ein C++-Cast ist (Konstruktor von double wird gerufen), und (double)x ein old-fashioned-c-style-cast, also pöse - aber dafür funktioniert er halt auch unter C... was unbestritten auch ein Vorteil sein kann.nufan hat geschrieben:Produziert folgenden Fehler:Folgendes funktioniert wie es soll:main.c:7: error: expected expression before ‘double’Code: Alles auswählen
double result = (double) (start - end) / (double) freq;