Als «undefined-behavior» getaggte Fragen

Das unvorhersehbare Ergebnis des Kompilierens oder Ausführens eines Programms, das gegen Regeln der Sprache verstößt, müssen weder Compiler, Interpreter noch Laufzeitsystem erzwingen. Verwenden Sie dieses Tag NICHT für Fragen zum Datentyp oder zum Rückgabewert von "undefined". In diesen Fällen sollte stattdessen das Tag [undefined] verwendet werden.




1
"Illegale Hardware-Anweisung" aus sehr einfachem Code
Während ich eine zweifelhafte Behauptung untersuchte , schrieb ich dieses kleine Testprogrammnoway.c int proveit() { unsigned int n = 0; while (1) n++; return 0; } int main() { proveit(); return 0; } Wenn ich das teste, bekomme ich: $ clang -O noway.c $ ./a.out zsh: illegal hardware instruction ./a.out …


1
Überträgt std :: ptr :: write die „Uninitialisierung“ der geschriebenen Bytes?
Ich arbeite an einer Bibliothek, mit deren Hilfe Typen abgewickelt werden können, die über FFI-Grenzen in eine Zeigergröße passen. Angenommen, ich habe eine Struktur wie diese: use std::mem::{size_of, align_of}; struct PaddingDemo { data: u8, force_pad: [usize; 0] } assert_eq!(size_of::<PaddingDemo>(), size_of::<usize>()); assert_eq!(align_of::<PaddingDemo>(), align_of::<usize>()); Diese Struktur hat 1 Datenbyte und 7 Füllbytes. …
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.