Entwickler-Ecke
Off Topic - C: String ausgeben
Jakob_Ullmann - Di 13.04.10 16:19
Titel: C: String ausgeben
Hallo!
Ich habe nun diesen Samstag Ubuntu installiert, mir CodeLite heruntergeladen und wollte nun mal vernünftig in C++ programmieren, wollte jedoch erstmal mit C anfangen. Ich habe jetzt schon ein paar Progrämmchen geschrieben, die mit Zahlen was machen, aber Strings gehen irgendwie noch nicht so. Ich wollte also folgendes compilieren:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| int main(void) { char myname[5]; printf("Name: \n"); scanf(myname); printf("Willkommen %s", myname); return 0; } |
Da wollte ich mal fragen, wie das korrekterweise sein müsste, hier gibt es doch sicher viele, die sich auch mit C auskennen.
Jakob_Ullmann - Mi 14.04.10 18:22
OK, ich sehe gerade, dass das scanf(&myname) als Pointer sein muss. Aber trotzdem klappt das nicht. Keiner eine Idee?
BenBE - Mi 14.04.10 21:59
Bei dem Scanf fehlt das Muster für das Einlesen. Beachte, dass scanf leicht zu Buffer-Overflows führen kann. Das F in scanf steht für Formatstring; und genau der fehlt.
Chemiker - Mi 14.04.10 23:25
Hallo Jakob Ullmann,
dann sollte es eigentlich funktionieren.
Bis bald Chemiker
Jakob_Ullmann - Do 15.04.10 15:26
Hm, darauf hätte man doch eigentlich kommen können (naja, wie gesagt, hab bis jetzt nur was mit Zahlen gemacht, da will er ja komischerweise keinen Format-String, zumindest bei int und float)... Vielen Dank!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!