Schnelle objektorientierte, kompilierende Programmiersprache.
-
soufian88
- Beiträge: 288
- Registriert: So Jan 18, 2009 1:01 pm
Beitrag
von soufian88 » Sa Jan 31, 2009 11:47 am
Hi, ich hätte mal eine kleine Frage...
ich möchte einen String anlegen und über scanf die Zeichen einlesen.
Code: Alles auswählen
/* suchmenge1.c */
#include <stdio.h>
int main(void) {
char str[20];
printf("Bitte geben Sie nur Zahlen ein: ");
scanf("%[0–9]", str);
printf("%s\n",str);
return 0;
}
aber dannach zeigt der mir nur Fragezeichen an.
Hier ist noch ein Screen dazu:
http://img134.imageshack.us/img134/3070/12807652vb9.png
-
Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
-
Kontaktdaten:
Beitrag
von Xin » Sa Jan 31, 2009 12:02 pm
soufian88 hat geschrieben:Hi, ich hätte mal eine kleine Frage...
ich möchte einen String anlegen und über scanf die Zeichen einlesen.
aber dannach zeigt der mir nur Fragezeichen an.
Ich bezweifle, dass das gültige scanf-Syntax ist... aber ich kann es Dir auch nicht mit Sicherheit sagen, denn scanf ist ein Tabu-Befehl, den man nicht benutzen sollte. Deswegen benutze ich ihn nicht und deswegen kenne ich die Eingabesyntax auch nicht auswendig.
Wie wär's mit Argumenten, die Du an Dein Programm übergibst?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
-
cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Beitrag
von cloidnerux » Sa Jan 31, 2009 12:24 pm
versuchs doch einfach mal mit
und bau dir eine Überprüfung ein, die checkt ob man nur Zahlen eingegeben hat.
Denn soweit mir bekannt ist, ist solch eine scanf-Syntax nicht möglich.
Redundanz macht wiederholen unnötig.
quod erat expectandum
-
soufian88
- Beiträge: 288
- Registriert: So Jan 18, 2009 1:01 pm
Beitrag
von soufian88 » Sa Jan 31, 2009 12:36 pm
Danke hat geklappt
Und ist
das gleiche wie

C ( Durchschnittlich ) C++ (am Lernen)
-
nufan
- Wiki-Moderator
- Beiträge: 2558
- Registriert: Sa Jul 05, 2008 3:21 pm
Beitrag
von nufan » Sa Jan 31, 2009 12:42 pm
soufian88 hat geschrieben:Danke hat geklappt
Und ist
das gleiche wie

Ich hab keine Ahnung was dieses [0-9] heißen soll. Bei anderen Datentypen kann man die Anzahl der Stellen festlegen.
Code: Alles auswählen
scanf ("%3d", &zahl); // eine 3-stellige Zahl wird eingelesen
In Verbindung mit Strings hab ich das allerdings noch nie gesehen.
-
cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Beitrag
von cloidnerux » Sa Jan 31, 2009 12:44 pm
Er wollte warscheinlich damit bewirken, das nur Zeichen von 0-9 eingegeben werden.
Redundanz macht wiederholen unnötig.
quod erat expectandum
-
cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Beitrag
von cloidnerux » Sa Jan 31, 2009 3:57 pm
eigenartig
Redundanz macht wiederholen unnötig.
quod erat expectandum
-
soufian88
- Beiträge: 288
- Registriert: So Jan 18, 2009 1:01 pm
Beitrag
von soufian88 » Sa Jan 31, 2009 4:00 pm
Stimmt.
Das Buch gibt es sogar zum Verkauf wäre nur Geldverschwendung wenn man es kaufen würde.
C ( Durchschnittlich ) C++ (am Lernen)
-
cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Beitrag
von cloidnerux » Sa Jan 31, 2009 4:07 pm
egt. nicht, ein Buch kann man Besser Handhaben als so ein E-Book, außerdem Braucht das Buch keinen Strohm.
Aber du solltest nicht allzuviel Energie in solche Banalitäten wie den scanf Aufruf stecken, es gibt echt wichtigeres.
Redundanz macht wiederholen unnötig.
quod erat expectandum