Hallo zusammen Ich habe ein kleines Problem: Ich habe ein Programm in C geschrieben. In diesem Programm arbeite ich mit Strings. Ich habe eine globale Variable (char) definiert und in diese Variable möchte ich immer wieder andere Strings darin speichern. Beispiel: Wird der erste Schalter gedrückt, steht "Mueller" in der Variable. Wird der zweite Schalter gedrückt, steht "Meier" in der Variable. Das möchte ich erreichen, doch leider funktioniert es nicht. Weiss jemand von euch wie ich das machen könnte? Besten Dank zum Voraus
Du solltest vielleicht erst mal posten, was du bisher hinbekommen hast. Alles andere hat was mit Kristallkugeln und solch Humbug zu tun.
Hallo Habe es so probiert: char string[32]; /*Taster 1 gedrückt*/ string[] = "Mueller"; /*Taster 2 gedrückt */ string[] = "Meier"; Aber das funktioniert irgendwie nicht. Weiss jemand wie ich das lösen könnte?
Nachtrag: Problem ist dabei, dass "Zeichenkette" (also Konstante mit Anführungszeichen drumrum) fest im Speicher abgelegt werden und dann als Zeiger verwendet werden. > char *p = "Mueller"; Würde den Zeiger p auf die Stelle im RAM/ROM setzen, an der "Mueller" hinterlegt ist, ein folgendes > p = "Meier"; Würde nur den Zeiger umbiegen. Wird dann aber auf *p zugegriffen, gibts entweder Zugrifssverletzungen oder andre Probleme... Gleiches gilt, wenn man mit > char s[30]; einen Vektor definiert. > s = "Mueller"; würde dann die Adresse, an der "Mueller" hinterlegt ist, in s speichern, nicht aber die einzelnen Bytes ('M', 'u', 'e' ...), deshalb hab ich strcpy benutzt.
Hallo Sven Merci für deine Antwort. Ich werde es heute nocht testen, und dir Bescheid geben ob es geklappt hat.. Noch einen schönen Tag.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.