(Mit „gültig“ meine ich Standardcode mit definiertem Verhalten, d. h. nicht implementierungsspezifisch/undefiniert usw.)
Gibt es ein Szenario, in dem ein sowohl in C als auch in C++ gültiger Code zu unterschiedlichem Verhalten führen würde, wenn er mit einem Standard-Compiler in jeder Sprache kompiliert wird?
Um es zu einem vernünftigen/nützlichen Vergleich zu machen (ich versuche, etwas praktisch Nützliches zu lernen, und nicht, um offensichtliche Lücken in der Frage zu finden), nehmen wir an:
- Nichts, was mit dem Präprozessor zu tun hat (was bedeutet, dass es keine Hacks mit #ifdef __cplusplus, Pragmas usw. gibt).
- Alles, was in der Implementierung definiert ist, ist in beiden Sprachen gleich (z. B. numerische Grenzwerte usw.)
- Wir vergleichen einigermaßen aktuelle Versionen jedes Standards (z. B. C++98 und C90 oder höher)
Wenn die Versionen wichtig sind, geben Sie bitte an, welche Versionen jeweils ein unterschiedliches Verhalten hervorrufen.
Mobile version