Hi!! Möchte vom PC aus zum µC einen String senden, dieser soll mittels einer Schleife den Wert um eins erhöhen. Wie eine Schleife funktioniert ist mir klar, aber ich möchte folgenden String senden: "WERT00001". Beim nächstem Schleifendurchlauf soll "WERT00002" ausgegeben werden usw. Wie mache ich denn das, in C z.B.????
Thorsten wrote: > Hi!! > Möchte vom PC aus zum µC einen String senden, dieser soll mittels einer > Schleife den Wert um eins erhöhen. > Wie eine Schleife funktioniert ist mir klar, aber ich möchte folgenden > String senden: "WERT00001". Du sagst es hier selbst: Du hast einen String. Ein String ist aber nur eine Zeichenfolge. Um aber etwas zum rechnen zu haben brauchst du eine Zahl. Also wirst du nicht umhinkommen, den String mal in 2 Teile zu zerlegen: * den Textanteil (in deinem Fall "WERT") * den numerischen Anteil ( in deinem Fall "00001") Der numerische Anteil wird dann in eine tatsächliche Zahl gewandelt (zb. mittels atoi() ) und ab dort kannst du dann deine Schleife einsetzen. Für die Ausgabe musst du dann aus konstanten Textteil und der veränderten Zahl wieder eine entsprechende Ausgabe basteln. Reicht dir das als Hinweis oder brauchst du noch mehr?
Hallo! Danke für die Antwort. Ok,beim µC ist klare das ich atoi() oder sowas verwenden muss. Beim PC zähle ich eine Schleife beim jedem Durchlauf um 1 hoch. Die beiden Strings (WERT+ZAHL) kann man zusammensetzen bzw. einen String an einen anderen dranhängen. Wie bastele ich aber aus z.B. 5 einen String "00005". Die Umwandlung sollte in der Schleife stattfinden. Gruß
1 | #define ANZAHL 34
|
2 | |
3 | int i; |
4 | |
5 | for (i = 0; i < ANZAHL; i++) |
6 | printf("WERT%05d\n", i); |
gibt WERT00000 bis WERT00033 aus.
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.