implementationsdefiniertes Verhalten in C++ (implementationsdefiniertes Verhalten in C++), Lektion, Seite 724242
https://www.purl.org/stefan_ram/pub/implementationsdefiniertes_verhalten_c++ (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
C++-Kurs

Implementationsdefiniertes Verhalten in C++ 

Ein Programm ist portabel, wenn es unter jeder  C++ -Implementation das gewünschte Verhalten zeigt.

Implementationsdefiniertes Verhalten  ist Verhalten, das von der zur Ausführung verwendeten C++ -Implementation abhängt und von ihr dokumentiert wird.

Es erlaubt Implementationen spezielles Verhalten bereitzustellen, das unter Aufgabe von Portabilität genutzt werden kann.

Beispielsweise ist der Wert von »::std::pow( 0, 0 )« oder der Wert von »INT_MAX« (mindestens 32767) implementationsdefiniert.

Ein portables Programm  sollte implementationsdefiniertes Verhalten nicht  nutzen, also beispielsweise nie »::std::pow( 0, 0 )« berechnen und für »INT_MAX« keinen größeren Wert als «32767» voraussetzen.

Ein nicht-portables Programm, das bewußt speziell für eine bestimmte Implementation  geschrieben wird, kann implementationsdefiniertes Verhalten dieser Implementation nutzen.

C -Standard
"If an exceptional condition occurs during the evaluation of an expression (that is, if the result is not mathematically defined or not in the range of representable values for its type), the behavior is undefined."
"The behavior of each of the functions in <math.h> is specified for all representable values of its input arguments, except where stated otherwise."
"For all functions, a domain error occurs if an input argument is outside the domain over which the mathematical function is defined."
"On a domain error, the function returns an implementation-defined value".

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram724242 stefan_ram:724242 implementationsdefiniertes Verhalten in C++ Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd724242, slrprddef724242, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/implementationsdefiniertes_verhalten_c++