Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
het opslaan van 32-bits float resulteert in geheugen, mogelijk verlies van prestaties
Opmerkingen
C4738 waarschuwt dat het resultaat van een toewijzing, cast, doorgegeven argument of andere bewerking mogelijk moet worden afgerond of dat de bewerking niet meer is geregistreerd en dat er geheugen nodig is (morsen). Dit kan leiden tot prestatieverlies.
U kunt deze waarschuwing oplossen en afronding voorkomen door te compileren met /fp:fast of te gebruiken double in plaats van float.
Om deze waarschuwing op te lossen en te voorkomen dat er geen registers meer zijn, wijzigt u de volgorde van de berekening en wijzigt u het gebruik van inlijning
Deze waarschuwing is standaard uitgeschakeld. Zie Compilerwaarschuwingen die standaard zijn uitgeschakeld voor meer informatie.
Example
In het volgende voorbeeld wordt C4738 gegenereerd:
// C4738.cpp
// compile with: /c /fp:precise /O2 /W3
// processor: x86
#include <stdio.h>
#pragma warning(default : 4738)
float func(float f)
{
return f;
}
int main()
{
extern float f, f1, f2;
double d = 0.0;
f1 = func(d);
f2 = (float) d;
f = f1 + f2; // C4738
printf_s("%f\n", f);
}