Was soll das für eine Funktion sein?
Was soll das für eine Funktion sein?
Linus TorvaldSoftware is like s e x: its better when its free.
Im Zweifelsfall kannst du dir doch auch leicht selbst eine Funktion schreiben die dir Zahlen und Buchstaben trennt...
denn ein kurzer Blick auf eine ASCII-Tabelle verrät: Zahlen, Groß- und Kleinbuchstaben sind 3 Blöcke die sich leicht voneinander unterscheiden lassen:
Zahlen: 0x30 bis 0x39
Großbuchstaben: 0x41 bis 0x5A
Kleinbuchstaben: 0x61 bis 0x7A
Aber es kommt natürlich auch darauf an wie deine Daten genau aussehen...
denn bei etwas komplexeren Protokollen eignet sich scanf() sicher besser.
So viele Treppen und so wenig Zeit!
naja, die funktion lautet isdigig() (für ne zahl) und isalpha() (für ein buchstaben. werds mal versuchen und dann berichten.
...and always remember...
...AVR RULES...
Wenn der volständige Code zu den Funtionen da ist, also nicht nur das .h File, sondern auch das .c File. sollte das ohne Problem gehen. Bei WinAVR sind die Funtionen aber wohl schon Teil der Standart-Library. Jedenfalls ist ctypes.h auch schon dabei.
Also Funktionen die nur ausgeben ob ein Zeichen eine Zahl oder ein Buchstabe ist, kannst du mit den von mir angegebenen ASCII-Bereichen sehr leicht selber schreiben. Und du könntest damit bei Bedarf auch zwischen Groß- und Kleinbuchstaben unterscheiden.
eine Funktion isdigit sähe dann etwa so aus:
Code:char isdigit(char c) { if((c >= 0x30) && (c <= 0x39)) return 1; else return 0; }
D.h. falls die funktionen aus ctype.h nicht wie gewünscht funktionieren, kannst du es auch so machen.
So viele Treppen und so wenig Zeit!
ok, danke für den tipp
...and always remember...
...AVR RULES...
Lesezeichen