• 26.10.2025, 05:55
  • Registrieren
  • Anmelden
  • Du bist nicht angemeldet.

 

Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies dein erster Besuch auf dieser Seite ist, lese dir bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

fksystems

God

C: wie mehrzeichigen string mit printf ausgeben?

Freitag, 27. Februar 2004, 20:54

ich wollte in C einen string aus mehreren zeichen mit printf ausgeben, der in einer variable gespeichert ist.


printf("%s", variableninhalt);
funktioniert aber nicht.

nur
printf("%c", variableninhalt);
funktioniert, aber gibt mir nur ein einzelnes zeichen aus.

jetzt die frage:
muß ich jetzt eine for-schleife machen, wenn ich den ganzen string ausgeben will, oder gibts da ne fertig-funktion für?
Dieses Youtube-Video ist aufgrund von Urheberrechtsbeschränkungen in deinem Land nicht verfügbar.

churchi

Senior Member

Re: C: wie mehrzeichigen string mit printf ausgebe

Freitag, 27. Februar 2004, 21:05

Man kann einen String in C nur in einem array von chars speichern und ausgeben. Ein char speichert nur 1 Zeichen.

fksystems

God

Re: C: wie mehrzeichigen string mit printf ausgebe

Freitag, 27. Februar 2004, 21:19

nein, mit variablen-inhalt ist ein array von chars gemeint.


ich habe es aber jetzt hingekriegt.

ich habe jetzt gemerkt, daß die angabe "%s" in gegensatz zu "%c" einen pointer statt einem variablen-inhalt erwartet.


aber noch eine frage:
wenn ich jetzt eine variable

char v[6];

..habe und will, daß da hallo drinsteht.

welche möglichkeiten habe ich dann, das hallo in die v[6] reinzumachen?

kann ich das nur mit strcpy oder gibts da noch was anderes einfacheres oder einfach halt was andereres?
Dieses Youtube-Video ist aufgrund von Urheberrechtsbeschränkungen in deinem Land nicht verfügbar.

churchi

Senior Member

Re: C: wie mehrzeichigen string mit printf ausgebe

Freitag, 27. Februar 2004, 21:37

v[0] = "h";
v[1] = "a";
.
.
.

Eumel

God

Re: C: wie mehrzeichigen string mit printf ausgebe

Freitag, 27. Februar 2004, 22:20

Quellcode

1
char v[6] = { 'H', 'a', 'l', 'l', 'o', '\0'};


MfG

Edit: Schreib dir ne String-Klasse :D oops ... meinst ja C ;D
"I've always said, the Web is the sum of all human knowledge plus porn.", Ron Gilbert
UltraStar Manager 1.7.2 | Infos zu meinem PC | .o0 DeathSpank 0o.

hus

Senior Member

Re: C: wie mehrzeichigen string mit printf ausgebe

Samstag, 28. Februar 2004, 13:54

Wozu der Aufstand?

char v[] = "hallo";

In C kann man Array und Pointer normalerweise als gleichbedeutend behandeln.
Einzig wichtiger Unterschied in diesem Fall:
char *v = "hallo"
ist falsch, da die rechte Seite einen konstanten Wert darstellt, der im Codesegment abgelegt wird; der Compiler sollte auch eine Warnung generieren. Es muß also heißen "const char *v", oder es muß ein entsprechender Compilerschalter bemüht werden.
Real stupidity beats artificial intelligence every time. T. Pratchett, "Hogfather"