• 12.07.2025, 04:13
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich 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"