Als «c++» getaggte Fragen

72
Ist string :: c_str () in C ++ 11 nicht mehr null terminiert?

In C ++ 11 basic_string::c_strist genau das gleiche definiert wie basic_string::data, was wiederum genau das gleiche ist wie *(begin() + n)und *(&*begin() + n)(wann 0 <= n < size()). Ich kann nichts finden, bei dem die Zeichenfolge immer ein Nullzeichen am Ende haben muss. Bedeutet dies,...

72
Optimierteste Art der Verkettung in Zeichenfolgen

Wir sind täglich auf viele Situationen gestoßen, in denen wir mühsame und sehr viele Zeichenfolgenoperationen in unserem Code ausführen müssen. Wir alle wissen, dass String-Manipulationen teure Operationen sind. Ich würde gerne wissen, welche der verfügbaren Versionen die günstigste ist. Die...

72
Warum sollte man MACRO + 0! = 0 verwenden?

In meiner aktuellen Codebasis sehe ich folgendes Muster: #if SOMETHING_SUPPORTED+0 != 0 ... #endif Leider ist dies eine sehr alte Codebasis und niemand weiß, wie und warum sie begonnen hat. Ich denke, es hat in C angefangen und es wurde langsam mit Klassen in C konvertiert und jetzt tendiert...

71
Zwei Dezimalstellen mit printf ()

Ich versuche, eine Zahl mit zwei Dezimalstellen printf()wie folgt zu schreiben : #include <cstdio> int main() { printf("When this number: %d is assigned to 2 dp, it will be: 2%f ", 94.9456, 94.9456); return 0; } Wenn ich das Programm starte, erhalte ich folgende Ausgabe: #...

71
Holen Sie sich Unix-Zeitstempel mit C ++

Wie bekomme ich einen uintUnix-Zeitstempel in C ++? Ich habe ein bisschen gegoogelt und es scheint, dass die meisten Methoden nach komplizierteren Wegen suchen, um die Zeit darzustellen. Kann ich es nicht einfach als bekommen uint?

71
So vermeiden Sie vorkompilierte Header

Ich versuche, ein einfaches VS-Programm in C ++ als Aufgabe für die Klasse zu kompilieren. Wir schließen immer nur ein <iostream>und ich bekomme immer wieder diesen Fehler: 1> Assignment.cpp (15): Schwerwiegender Fehler C1010: Unerwartetes Dateiende bei der Suche nach vorkompiliertem...