[Frage] Zeiger addieren
-
Hallo!
Ich habe eine Frage zu C++. ISt es möglich sowie bei Strings Zeiger zu "addieren"(in meinem FAll jetzt const char*). ICh möchte nämlich danach eine Funktion benutzen, die einen const char* Parameter erwartet.Mfg
-
Nein! Wenn du nicht weist warum -> Pointer noch einmal angucken. Was aber möglich wäre:
void foo(const char *p) { std::cout << p << std::endl; } int main() { char a[] = "Hallo, "; char b[] = "Welt!"; foo((std::string(a) + b).c_str()); }
-
Geht die Frage auch ein wenig ausführlicher?
Versuch einer Antwort: Zwei Zeiger zu addieren geht nicht (macht auch technisch nicht viel Sinn). Aber du kannst einen int-Wert mit einem Zeiger addieren (
p+nliefert einen Zeiger, der n Elemente weiter in dem Array liegt, auf das p (vermutlich) zeigt).
-
cooky451 schrieb:
Nein! Wenn du nicht weist warum -> Pointer noch einmal angucken. Was aber möglich wäre:
void foo(const char *p) { std::cout << p << std::endl; } int main() { char a[] = "Hallo, "; char b[] = "Welt!"; foo((std::string(a) + b).c_str()); }Danke... Und ja shame on me... Zeiger=Adressen Adressen addieren= doof

Und dein Tipp hat mir geholfen...
-
Ähhh..
Vielleicht suchst du die Funktion strncat mit folgender Syntax:#include <cstring> char* strncat ( char* dst, const char* src, size_t n);Diese Funktion hängt n Zeichen der Zeichenkette src an dst an.
Falls du sowas gemeint hast ...