#1 3. November 2008 Frage zum Aufbau von Char Arrays Hallo, grundlegend denke ich das z.B. ein Char Array mit dem Inhalt "Hallo" , an Stelle 0 das Zeichen H hat und an Stelle 1 das Zeichen a etc... Leider will diese Überlegung nicht ganz mit meinem C-Programm in Linux übereinstimmen. Habe bei folgendem Programm das Problem dass irgendwie die eigentliche Stelle des Arrays immer 2 Stellen früher steht, also zb ist test[0] nun test[-2]. Bei folgendem Code passiert dies: Code: void Eingabe(char eingabe[23]) { do { printf("Ihre Eingabe: "); do { scanf("%s",eingabe); } while ( getchar() != '\n' ); /* Abfangen des ENTER Buttons */ printf("\n%c\n", eingabe[-1]); }while(eingabe[0]!= 'T' && eingabe[0]!='U' && eingabe[0] !='Q'); } Hoffe ihr könnt mir helfen. + Multi-Zitat Zitieren
#2 3. November 2008 AW: Frage zum Aufbau von Char Arrays Ich verstehe irgendwie nicht genau, was du fragen willst/was dein Problem ist. Aber folgende Zeile ist schon etwas komisch: Code: printf("\n%c\n", eingabe[-1]); In C/C++ bedeutet array[-1], dass du auf die Stelle im Speicher zugreifst, die vor dem ersten Element des Arrays steht. (Anders als z.B. in C#) + Multi-Zitat Zitieren
#3 3. November 2008 AW: Frage zum Aufbau von Char Arrays Sry hab etwas wichtiges vergessen, will z.B. "T 2.34" eingeben, also eine Zeichenkette mit Leerzeichen. Die eingabe[-1], soll eigentlich eingabe[0] heißen, war nur zu Testzwecken. + Multi-Zitat Zitieren
#4 4. November 2008 AW: Frage zum Aufbau von Char Arrays Ähm ja, negative Indexe gibts bei C/C++ nicht. Und deine Fragestellung kapier ich nich so ganz, sry :S + Multi-Zitat Zitieren
#5 4. November 2008 AW: Frage zum Aufbau von Char Arrays Also ich will eine Eingabe machen ala "T 200", nun wird, wie ich mittlerweile herausgefunden habe aber bei einem Leerzeichen, was ja bei "T 200" vorhanden ist scanf abgebrochen, wie kann ich das noch lösen? womöglich mit beliebig vielen Leerzeichen in der Eingabe? + Multi-Zitat Zitieren
#6 4. November 2008 AW: Frage zum Aufbau von Char Arrays versuch es mal mit gets(eingabe); anstatt scanf + Multi-Zitat Zitieren
#7 4. November 2008 AW: Frage zum Aufbau von Char Arrays http://www.dreamincode.net/code/snippet1675.htm hier kannst ne zeile von stdin auslesen + Multi-Zitat Zitieren
#8 9. November 2008 AW: Frage zum Aufbau von Char Arrays Hab jetzt mal folgendes Programmiert: Code: #include <stdio.h> #include <ctype.h> #include <string.h> int main() { char eingabe; float zahlen; do { printf("Ihre Eingabe: "); scanf("%c",&eingabe); if(eingabe != 'Q') scanf("%11f",&zahlen); if(isalpha(eingabe)) { printf("%c\n", eingabe); printf("%f\n", zahlen); } }while(eingabe !='Q'); return 0; } Habe nun aber folgende Probleme: Nach der 2. Eingabe wird "Ihre Eingabe ausgegeben und dann die Werte der Variablen, wie kommt das ? Das Gleiche tritt auf wenn ich bei der ersten eingabe(Variable eingabe) eine Zahl eingebe nur gibt er halt "Ihre Eingabe: Ihre Eingabe: " aus , scheint wohl das gleiche Problem zu sein. Weiß jemand wie ich das lösen kann? + Multi-Zitat Zitieren
#9 10. November 2008 AW: Frage zum Aufbau von Char Arrays Was möchtest du denn mit dem Programm ausgeben? Beschreibe doch mal was das Programm machen soll? + Multi-Zitat Zitieren