Als «undefined-behavior» getaggte Fragen

13
Philosophie hinter undefiniertem Verhalten
C \ C ++ - Spezifikationen lassen eine Vielzahl von Verhalten offen, die Compiler auf ihre eigene Weise implementieren können. Es gibt eine Reihe von Fragen, die hier immer wieder gestellt werden, und wir haben einige ausgezeichnete Beiträge dazu: https://stackoverflow.com/questions/367633/what-are-all-the-common-undefined-behaviour-that-ac-programmer-should-know-abo https://stackoverflow.com/questions/4105120/what-is-undefined-behavior https://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points Meine Frage ist nicht, was undefiniertes Verhalten ist, …

11
Warum hat C ++ 'undefined behaviour' (UB) und andere Sprachen wie C # oder Java nicht?
In diesem Beitrag zum Stapelüberlauf wird eine ziemlich umfassende Liste von Situationen aufgeführt, in denen die C / C ++ - Sprachspezifikation als "undefiniertes Verhalten" deklariert wird. Ich möchte jedoch verstehen, warum andere moderne Sprachen wie C # oder Java nicht das Konzept von "undefiniertem Verhalten" haben. Bedeutet dies, dass …

5
Undefiniertes Verhalten in Java
Ich habe diese Frage zu SO gelesen , in der ein allgemeines undefiniertes Verhalten in C ++ erörtert wird, und ich habe mich gefragt: Hat Java auch ein undefiniertes Verhalten? Wenn dies der Fall ist, was sind dann einige häufige Ursachen für undefiniertes Verhalten in Java? Wenn nicht, welche Features …


4
Wann hat Undefined Behavior in C die Kausalitätsbarriere überschritten?
Einige hypermoderne C-Compiler schließen daraus, dass solche Eingaben niemals empfangen werden, wenn ein Programm bei bestimmten Eingaben Undefiniertes Verhalten aufruft. Folglich kann jeder Code, der irrelevant wäre, wenn solche Eingaben nicht empfangen würden, eliminiert werden. Als einfaches Beispiel gegeben: void foo(uint32_t); uint32_t rotateleft(uint_t value, uint32_t amount) { return (value << …

5
Grundsätzlich undefiniertes Verhalten
Ob in C oder C ++, ich denke, dass dieses illegale Programm, dessen Verhalten gemäß dem C- oder C ++ - Standard undefiniert ist, interessant ist: #include <stdio.h> int foo() { int a; const int b = a; a = 555; return b; } void bar() { int x = …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.