Suchergebnisse für Anfrage "undefined-behavior"
Ist Zeigervergleich undefiniertes oder nicht angegebenes Verhalten in C ++?
Die C ++ Programming Language 3rd Edition von Stroustrup sagt, dass Subtraktion von Zeigern wird nur definiert, wenn beide Zeiger auf Elemente desselben Arrays zeigen (obwohl die Sprache keine schnelle Möglichkeit hat, dies sicherzustellen). ...
Ist es illegal, die Längenmodifikatoren h oder hh zu verwenden, wenn das entsprechende Argument für printf kein short / char war?
Dasprintfie Funktionsfamilie @ bietet eine Reihe von Längenmodifikatoren, von denen zwei @ sinhh (bezeichnet einsigned char oderunsigned char Argument zu @ befördeint) undh (bezeichnet einsigned short oderunsigned short Argument zu @ befördeint). ...
Undefiniertes Verhalten oder: Hat Swift Sequenzpunkte?
In C / C ++ die zweite Anweisung in int i = 0; int j = i++ + i++ + ++i;invokes beide unspezifiziertes Verhalten, da die Reihenfolge der Auswertung von Operanden nicht angegeben ist, undundefiniertes Verhalten, weil die Nebenwirkungen auf ...
Auf inaktive Mitglieder des gleichen Typs in Gewerkschaften zugreifen
Ich habe so etwas: union DataXYZ { struct complex_t { float real, imag; } complex; struct vector_t { float magnitude, phase; } vector; };Ich habe einige Vektoren davon, die Allzweckarbeitsspeicher sind, in denen ich die Felder entsprechend nach ...
Ist die Stringbreite von printf () bei nicht abgeschlossenen Strings sicher?
Ist das Folgende gut definiert? const char not_a_c_string[] = { 'h', 'e', 'l', 'l', 'o' }; printf( "%.5s", (const char*) not_a_c_string );Dies ist eine Frage zum spezifischen Formular"%.5s" und keinWie kann eine möglicherweise nicht mit NUL ...
Was sind die Gründe, warum das Erweitern des Standardnamensbereichs als undefiniertes Verhalten gilt?
Warum werden dem @ Namen hinzugefügstd Namespace undefiniertes Verhalten? Die offensichtliche Antwort lautet "weil der Standard dies sagt", z. in C ++ 14 [Namespace.std] 17.6.4.2.1 / 1: Das Verhalten eines C ++ - Programms ist undefiniert, ...
reinterpret_cast, char * und undefiniertes Verhalten
Was sind die Fälle, in denenreinterpret_casting achar* (oderchar[N]) ist undefiniertes Verhalten und wann ist es definiertes Verhalten? Nach welcher Faustregel sollte ich diese Frage beantworten? ie wir von @ gelernt habdiese ...
Wie wirkt sich std :: launder auf Container aus?
Betrachten Sie die folgende vereinfachte und unvollständige Implementierung eines Vektors mit fester Größe: template<typename T> class Vec { T *start, *end; public: T& operator[](ssize_t idx) { return start[idx]; } void pop() { end--; end->~T(); ...
In welchen Versionen des C ++ - Standards hat „(i + = 10) + = 10“ ein undefiniertes Verhalten?
Hat in C ++ Folgendes undefiniertes Verhalten: