Welche Fehler- oder Warnmeldung ...
-
spuck(t)(en) eu(er)(re) compiler bei dieser zeile aus:
unsigned double a = 0.5;
der msvc express (c-compiler) sagt:
warning C4076: 'unsigned' : can not be used with type 'double'
und
warning C4244: 'initializing' : conversion from 'double' to 'unsigned int', possible loss of data
die erste ist ja ok, aber die zweite???
-
g++ 4.1.2:
main.cpp: In function »int main()«: main.cpp:1: Fehler: »short«, »signed« oder »unsigned« ungültig für »d«
warum?
-
darthdespotism schrieb:
warum?
nur so. was der g++ macht gefällt mir besser.
-
BCC:
[BCC32 Fehler] main.cpp(10): E2176 Zu viele Typen in der Deklaration
-
ah, danke
könnt ihr's mal als .c und nicht als .cpp datei übersetzen?
möglicherweise ist ein c-compiler toleranter...
-
unsigned double gibts nicht.
float, double und long double sind wie alle Fließkommazahlen vorzeichenbehaftet.
-
pale dog schrieb:
ah, danke
könnt ihr's mal als .c und nicht als .cpp datei übersetzen?
möglicherweise ist ein c-compiler toleranter...gcc 4.1.2
main.c: In Funktion »main«: main.c:1: Fehler: sowohl »unsigned« als auch »double« in Deklaration
-
pale dog schrieb:
könnt ihr's mal als .c und nicht als .cpp datei übersetzen?
möglicherweise ist ein c-compiler toleranter...Beim BCC genau das gleiche Ergebnis.
Btw, i.d.R. ist ein C-Compiler eher strikter.
-
audacia schrieb:
Btw, i.d.R. ist ein C-Compiler eher strikter.
warum sollte ein C-Compiler strikter sein?
-
Z.B., weil man erst ab C++ Variablen mitten in der Funktion deklarieren, das void in der Parameterliste einer Funktionsdeklaration weglassen darf o.ä. (zumindest im Vergleich zu C89).