Heim > Backend-Entwicklung > C++ > Hauptteil

Warum kann mein C-Code keine Zeichenfolgen ausgeben?

DDD
Freigeben: 2024-10-31 07:51:02
Original
975 Leute haben es durchsucht

Why Can't My C   Code Output Strings?

Erforschung des Rätsels der String-Ausgabefehler

Im Herzen der Codeentwicklung stößt man nicht selten auf Stolpersteine, wie zum Beispiel die Unfähigkeit, dies zu tun Ausgabezeichenfolgen. Obwohl dieses Problem scheinbar unkompliziert ist, hat es Programmierer oft verwirrt und zu stundenlangem Debuggen geführt.

Das Geheimnis der fehlenden Zeichenfolge

Bedenken Sie den folgenden Codeausschnitt:

<code class="cpp">string text;
text = WordList[i].substr(0, 20);
cout << "String is : " << text << endl;
Nach dem Login kopieren

Beim Versuch, diesen Code auszuführen, kann es sein, dass Sie auf den verwirrenden Fehler stoßen:

Error 2 error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'std::string' (or there is no acceptable conversion)
Nach dem Login kopieren

Um dieses Rätsel noch weiter zu verschärfen, erzeugt selbst dieser vereinfachte Code nicht die gewünschte Ausgabe:

<code class="cpp">string text;
text = "hello";
cout << "String is : " << text << endl;
Nach dem Login kopieren

Enthüllung der Lösung

Der Schlüssel zum Aufdecken dieser mysteriösen Fehlermeldungen liegt in einem entscheidenden Aspekt, der bei unserem Eifer, den perfekten Code zu erstellen, oft übersehen wird: einschließlich der notwendigen Header. Der Code erfordert zwei wesentliche Header, um die ordnungsgemäße Ausgabe von Zeichenfolgen zu ermöglichen:

<code class="cpp">#include <string>
#include <iostream></code>
Nach dem Login kopieren

Durch das Einschließen dieser Header wird sichergestellt, dass der Compiler weiß, wie er mit Zeichenfolgenoperationen umgeht. Ohne sie ist der Compiler nicht in der Lage, den String-zu-String-Verkettungsoperator (<<) korrekt zu interpretieren, was zu den gemeldeten Fehlern führt.

Nehmen Sie die Header an und begeben Sie sich auf den Weg des Erfolgs

Sobald diese Header vorhanden sind, fließen die Strings nahtlos aus Ihrem Code, sodass Sie die Welt der String-Manipulation mit Zuversicht erobern können. Der folgende Code wird nun einwandfrei ausgeführt:

#include 
#include 

string text;
text = WordList[i].substr(0, 20);
cout << "String is : " << text << endl;

string text2 = "hello";
cout << "String is : " << text2 << endl;

Das obige ist der detaillierte Inhalt vonWarum kann mein C-Code keine Zeichenfolgen ausgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!