Drucken Letzte Zeichen aus dem Wort, aus dem char-array

I ' V bekam dies:

char file_name[50];
strncpy(file_name, dp2->d_name, sizeof(file_name2));
//put some words in it, for example "E348C", "E348", "E348A"......

Und ich muss letztes Zeichen von jedem Wort, und überprüfen Sie es später, wenn es Zahl oder einen Buchstaben..... aber die Worte, wie Sie sehen können, haben nicht die gleiche Länge....

Ich habe keine Ahnung, wie man Letzte Zeichen...

Auch char die variable Dateiname[50]; definiert werden könnte als char * file_name, ist mir egal....

Irgendwelche Ideen ?

  • Sie wissen Bescheid über die strlen Funktion? Und denken Sie auch daran, dass arrays werden indiziert von 0 zu length - 1.
  • Oh, und Sie müssen vorsichtig sein, wie strncpy wird nicht die Beendigung '\0' Zeichen in das Ziel, wenn die Quelle zu lang ist. So haben Sie, um die Länge der ersten Quelle, und dann vielleicht die Länge des Ziel.
  • Ich hoffe, dass niemand Bucht eine komplette Lösung. In diesem Fall ein paar Hinweise und Tipps, die sollte reichen und wird helfen, die OP mehr als die volle Lösung auf lange Sicht.
  • Yeah, ich vergaß über strlen() ... danke für die Erinnerung... ich werde es versuchen 🙂
  • Pilebrog: wie ich schon sagte, es doesnt metter, wenn ich definieren file_name als char * statt char[] ..so kann ich versuchen, char * file_name; und nur file_name = dp2->d_name; was du...???
  • Es kommt ganz darauf an, was Sie tun, die mit der Zeichenfolge. Wenn Sie möchten, die Zeichenfolge zu ändern, dann könnte es besser sein, z.B. strdup. Ansonsten einfach mit der Maus sollte funktionieren (solange Sie nicht frei, was es Punkte von irgendwo anders). Und denken Sie daran, dass bestimmte string-Funktionen (zum Beispiel strtok) tun, ändern Sie die Zeichenfolge, die Sie Ihnen übergeben.
  • gut, strlen() funktioniert so weit mit string, ( char*) ...danke Jungs..
  • gut, ja, aber und wie kann ich Sie (wieder) oder drucken Sie den Wert des Zeichens aus dem string? Wenn es war-array, mache ich es mit for (), aber da verwende ich char* ...ich habe keine Ahnung... (erinnern, die ich mit C, nicht C++)...
  • Ok, ich löse das schon.. danke an alle
  • Bitte schreiben Sie nicht eine Antwort in der Frage.

InformationsquelleAutor user3036674 | 2013-11-28
Schreibe einen Kommentar