So drucken Sie eine Zeichenkette in C++
-
Verwendung von zum Drucken einer Zeichenkette die Operatoren
std::cout
und<<
-
Verwendung von den
std::copy
Algorithmus zum Drucken einer Zeichenkette -
Verwendung von die Funktion
printf()
zum Drucken einer Zeichenkette
In diesem Artikel werden mehrere Methoden zum Drucken einer Zeichenkette in C++ demonstriert.
Verwendung von zum Drucken einer Zeichenkette die Operatoren std::cout
und <<
std::cout
ist das globale Objekt zur Steuerung der Ausgabe in einen Stream-Puffer. Um die String-Variable s1
in den Puffer auszugeben, müssen wir den Operator - <<
verwenden, der als Stream-Insertion-Operator bezeichnet wird. Das folgende Beispiel demonstriert eine einzelne String-Ausgabeoperation.
#include <iostream>
#include <iterator>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main() {
string s1 = "This string will be printed";
cout << s1;
cout << endl;
return EXIT_SUCCESS;
}
Ausgabe:
This string will be printed
Verwendung von den std::copy
Algorithmus zum Drucken einer Zeichenkette
Die Methode copy
stammt aus der <algorithm>
STL-Bibliothek, und sie kann die Bereichselemente auf vielfältige Weise manipulieren. Da wir auf den string
-Container selbst als Bereich zugreifen können, können wir jedes Element ausgeben, indem wir dem copy
-Algorithmus das Argument std::ostream_iterator<char>
hinzufügen.
Beachten Sie, dass diese Methode auch ein spezifisches Trennzeichen zwischen jedem Zeichen der Zeichenkette übergeben kann. Im folgenden Code wird kein Trennzeichen (""
) angegeben, um Zeichenkette in Originalform zu drucken.
#include <iostream>
#include <iterator>
#include <string>
#include <vector>
using std::cin;
using std::copy;
using std::cout;
using std::endl;
using std::string;
using std::vector;
int main() {
string s1 = "This string will be printed";
copy(s1.begin(), s1.end(), std::ostream_iterator<char>(cout, ""));
cout << endl;
return EXIT_SUCCESS;
}
Verwendung von die Funktion printf()
zum Drucken einer Zeichenkette
printf
ist ein leistungsfähiges Werkzeug für die formatierte Ausgabe. Es ist Teil der C-Standard-Eingabe-Ausgabe-Bibliothek. Es kann direkt aus C++-Code aufgerufen werden. printf
hat die variable Anzahl von Parametern und nimmt eine Zeichenkettenvariable vom Typ char *
, was bedeutet, daß wir die Methode c_str
von der Variablen s1
aufrufen müssen, um sie als Argument zu übergeben. Beachten Sie, dass jeder Typ seinen eigenen Format-Bezeichner hat (z. B. string
- %s
), die in der folgenden Tabelle aufgelistet sind.
Spezifizierer | Beschreibung |
---|---|
% |
Druckt ein literales %-Zeichen (dieser Typ akzeptiert keine Felder für Flags, Breite, Genauigkeit, Länge). |
d, i |
int als vorzeichenbehaftete Ganzzahl. %d und %i sind synonym für die Ausgabe, unterscheiden sich aber, wenn sie mit scanf für die Eingabe verwendet werden (wobei die Verwendung von %i eine Zahl als hexadezimal interpretiert, wenn ihr 0x vorangestellt ist, und als oktal, wenn ihr 0 vorangestellt ist). |
u |
Dezimal ohne Vorzeichen drucken int. |
f, F |
double in normaler (Festkomma-)Notation. f und F unterscheiden sich nur darin, wie die Zeichenketten für eine unendliche Zahl oder NaN gedruckt werden (inf, infinity und nan für f; INF, INFINITY und NAN für F). |
e, E |
doppelter Wert in Standardform (d.ddde±dd). Eine E-Konvertierung verwendet den Buchstaben E (statt e) zur Einführung des Exponenten. |
g, G |
double entweder in normaler oder in exponentieller Notation, je nachdem, was für seine Größe besser geeignet ist. g verwendet Kleinbuchstaben, G Großbuchstaben. |
x, X |
ohne Vorzeichen int als Hexadezimalzahl. x verwendet Kleinbuchstaben und X Großbuchstaben. |
o |
unsigned int in oktal. |
s |
null-terminierte Zeichenkette. |
c |
Zeichen (Charakter). |
p |
void* (Zeiger auf void) in einem von der Implementierung definierten Format. |
a, A |
double in hexadezimaler Notation, beginnend mit 0x oder 0X. a verwendet Kleinbuchstaben, A verwendet Großbuchstaben. |
n |
Nichts drucken, sondern schreibt die Anzahl der bisher erfolgreich geschriebenen Zeichen in einen Integer-Zeiger-Parameter. |
#include <iostream>
#include <iterator>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main() {
string s1 = "This string will be printed";
cout << s1;
cout << endl;
printf("%s", s1.c_str());
cout << endl;
return EXIT_SUCCESS;
}
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn FacebookVerwandter Artikel - C++ String
- Finden Sie das erste sich wiederholende Zeichen in einer Zeichenfolge in C++
- Finden Sie die längste gemeinsame Teilzeichenfolge in C++
- Großschreiben des ersten Buchstabens einer Zeichenfolge in C++
- Vergleich von String und Character in C++
- Entfernen Sie das letzte Zeichen aus einer Zeichenkette in C++
- Abrufen des letzten Zeichens einer Zeichenkette in C++