Warum kein Error oder Warning?
-
Abend,
sollte das hier nicht mindestens eine Warnung ausgeben?
double d = 20.0; float f = d;Benutze VS 2005 Prof. Ist das gültig in C++ oder kann ich das in den VS Optionen irgendwo einstellen?
Danke :xmas1:
-
Klar ist das gültig. Der Wert wird höchstens abgeschnitten. Eine Warnung solltest du schon bekommen, aber anscheinend sind bei dir die Voreinstellungen anders...
Jedenfalls:
:warning: conversion from 'double' to 'float', possible loss of dataMfG
-
Evtl. auf Warning Level 5 kompilieren, und nicht 4.
-
Artchi schrieb:
Evtl. auf Warning Level 5 kompilieren, und nicht 4.
Wo gibt es in VS 2005 denn Warning Level 5?
-
Vielleicht kommt auch keine Warning weil der Compiler ja weiss dass d 20.0 ist und daher locker in ein float passt?
-
sri schrieb:
Artchi schrieb:
Evtl. auf Warning Level 5 kompilieren, und nicht 4.
Wo gibt es in VS 2005 denn Warning Level 5?
Unter Warnstufe 4 solltest du zumindestens beim VC2005 (dort habe ich es grad ausprobiert), eine Warnung (C4244) bekommen.
cu André
-
hustbaer schrieb:
Vielleicht kommt auch keine Warning weil der Compiler ja weiss dass d 20.0 ist und daher locker in ein float passt?
nicht dein ernst oder
-
ohnee schrieb:
hustbaer schrieb:
Vielleicht kommt auch keine Warning weil der Compiler ja weiss dass d 20.0 ist und daher locker in ein float passt?
nicht dein ernst oder
Wieso nicht?
Der Code kann ja kein Problem machen, wieso sollte dann eine Warning kommen? Und wenn der Compiler das erkennen kann, wieso sollte er dann eine Warning generieren?
Und dass es Compiler gibt die das erkennen können steht ausser Frage.