Kann Code, der sowohl in C als auch in C++ gültig ist, beim Kompilieren in den einzelnen Sprachen ein unterschiedliches C++

Programme in C++. Entwicklerforum
Anonymous
 Kann Code, der sowohl in C als auch in C++ gültig ist, beim Kompilieren in den einzelnen Sprachen ein unterschiedliches

Post by Anonymous »

C und C++ weisen viele Unterschiede auf, und nicht jeder gültige C-Code ist gültiger C++-Code.

(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.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post