WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 30.05.2002, 20:38   #1
ascii
Veteran
 
Registriert seit: 12.04.2002
Alter: 42
Beiträge: 324


ascii eine Nachricht über ICQ schicken
Standard HEX2INT HOWTO??????

Hi! ich hab 2 char, wo jeweils ein Hex - Wert (0-F) drinnensteht! ich will nun diese beiden werte auf int wandeln (0-255)! Wie kann ich das machen????????????
ascii ist offline   Mit Zitat antworten
Alt 30.05.2002, 20:46   #2
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

welche sprache ? - wär glaub ich hilfreich...
käptn ist offline   Mit Zitat antworten
Alt 30.05.2002, 20:50   #3
ascii
Veteran
 
Registriert seit: 12.04.2002
Alter: 42
Beiträge: 324


ascii eine Nachricht über ICQ schicken
Standard

i bin a trottl.............
C!!!
ascii ist offline   Mit Zitat antworten
Alt 30.05.2002, 21:30   #4
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

in c hab ich leider null ahnung, aber da gibt's doch sicher eine funktion...
käptn ist offline   Mit Zitat antworten
Alt 30.05.2002, 21:35   #5
ascii
Veteran
 
Registriert seit: 12.04.2002
Alter: 42
Beiträge: 324


ascii eine Nachricht über ICQ schicken
Standard

ich weiss auch net recht........c suckt! do dua i jo liaba assembler programmiern
oba i brauch den schas für morgen, maturaprojekt!
ascii ist offline   Mit Zitat antworten
Alt 30.05.2002, 21:38   #6
irrsinn
Veteran
 
Registriert seit: 05.04.2002
Beiträge: 331


Standard

generelles vorgehen: du nimmst dir das erste zeichen und ziehst wenns eine zahl is den ascii wert von 0 ab, wenns ein buchstabe is den wert von a (bzw A) ab. damit hast jetzt die zwei gesuchten binären werte.

dann nimmst eine auf 0 gesetzte variable und weist den wert der ersten stelle zu. mit dem shift operator kannst festlegen, auf welche "stelle" geschrieben wird. also zb

variable << 1 = zeichen1;

damit schreibst das höhere halbbyte.

dann weist das zweite zeichen zu:

variable += zeichen2;

und schon bist fertig.

eigentlich müssts dafür fertige funktionen geben. werd in meinem cod archiv nachschauen. vielleicht find ich was.
____________________________________
Wenn es dumm ist aber funktioniert, ist es nicht dumm!
irrsinn ist offline   Mit Zitat antworten
Alt 30.05.2002, 21:48   #7
ascii
Veteran
 
Registriert seit: 12.04.2002
Alter: 42
Beiträge: 324


ascii eine Nachricht über ICQ schicken
Standard

thx für die meldung:

heisst das!

ich schau, dass i vom ASCII - WERT aufm HEX-Wert wandl
danach je nach eine der beiden als höheres nibble mit dem shift-operator reinschieb und das andere einfach addier??
müsst i dann:

variable<<4=zeichen1;
variable += zeichen2;

die Variable wäre, wenn die zeichen jeweils FF wären 255????!!!!
ascii ist offline   Mit Zitat antworten
Alt 30.05.2002, 21:52   #8
irrsinn
Veteran
 
Registriert seit: 05.04.2002
Beiträge: 331


Standard

die zahlen 0-9 und alle buchstaben liegen ja in der ascii tabelle nebeneinander. dh ihre werte unterscheiden sich nur um 1. wennst also vom zeichen 0 den wert vom zeichen 0 abziehst bleibt dir 0 über. wennst vom zeichen 4 den wert vom zeichen 0 abziehst bleibt dir 4 über.

aufpassen musst, dass du groß und kleinbuchstaben richtig unterscheidest.

hast recht. da hab ich mich verschrieben. musst natürlich um 4 bits shiften.
____________________________________
Wenn es dumm ist aber funktioniert, ist es nicht dumm!
irrsinn ist offline   Mit Zitat antworten
Alt 30.05.2002, 22:06   #9
ascii
Veteran
 
Registriert seit: 12.04.2002
Alter: 42
Beiträge: 324


ascii eine Nachricht über ICQ schicken
Standard

okay, passt! i werd jez gschwind a testproggi schreiben! weisst du auswendig um wieviel ASCII und HEX - Wert von Zahlen bzw Buchstaben auseinander liegen??
ascii ist offline   Mit Zitat antworten
Alt 30.05.2002, 22:13   #10
irrsinn
Veteran
 
Registriert seit: 05.04.2002
Beiträge: 331


Standard

kleiner tip:

unsigned char ch = 'a';
mit printf("%x", ch); oder
printf("%d", ch); (für alle, die lieber mit dezimalzahlen rechen)

kriegst den ascii wert von a angezeigt.

wenn ichs auswenig wüsste, hätt ichs dir schon beim 1. posting dazu geschrieben
____________________________________
Wenn es dumm ist aber funktioniert, ist es nicht dumm!
irrsinn ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:28 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag