PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C++ Hilfe benötigt :)


Gast
2006-03-13, 12:05:42
Morgen !

Ich soll folgende Aufgabe mit VS .NET 2003 in C++ erledigen und hab keine Ahnung wie:

unsigned char inputpin[24]

Dadurch soll ein Pin im Format "11 11 11 usw." (von 0-23 mit Leerzeichen) erzeugt bzw. eingelesen werden.

Ich dachte mir, dass ich so anfange:

inputpin[0]='1'
inputpin[1]='1'
inputpin[2]=' ' Leerzeichen
usw.

Anschließend soll der Pin in folgendes Format umgewandelt werden:

unsigned char outputpin[8]

Er soll dann so aussehen: "0x11, 0x11, 0x11....."

Es müssen also jeweils 3 Feldelemente zusammengefasst werden und als eín neues ausgegeben werden. inputpin[0] und inputpin[1] ergeben zusammen 11, was dann als 0x11 dargestellt werden soll und anschließend ins Dezimalsystem umgerechnet werden soll, also 17.

Für Hilfe wäre ich sehr dankbar !

del_4901
2006-03-13, 12:20:12
Ich nehme mal Coda das Wort vorweg.

C Strings sind phöhze! Dafür gibt es <string>!

was ich noch tolleriere ist, wenn du mit atof einen C-Sting in eine Zahl umwandelst, da fällt mir nämlich grad selber nichts besseres ein. Mit c_str() bekommst du aus dem string den C-String.

http://www.cppreference.com/cppstring/index.html

Coda
2006-03-13, 12:21:57
Was ist denn bitte ein "Pin" in diesem Kontext?

del_4901
2006-03-13, 12:24:05
Was ist denn bitte ein "Pin" in diesem Kontext?

Das hab ich mich auch gefragt :)

Coda
2006-03-13, 13:08:27
was ich noch tolleriere ist, wenn du mit atof einen C-Sting in eine Zahl umwandelst, da fällt mir nämlich grad selber nichts besseres ein. Mit c_str() bekommst du aus dem string den C-String.Sorry, hab ich jetzt erst gelesen:
float number = boost::lexical_cast<float>(string);

Falls kein Boost vorhanden:
float number;
std::stringstream stream(string);
stream >> number;

boost::lexical_cast ist auch nur ein Wrapper um stringstream btw.

del_4901
2006-03-13, 14:36:14
Sorry, hab ich jetzt erst gelesen:
float number = boost::lexical_cast<float>(string);

Falls kein Boost vorhanden:
float number;
std::stringstream stream(string);
stream >> number;

boost::lexical_cast ist auch nur ein Wrapper um stringstream btw.

*ratter* *ratter* *abspeichern*

Wieder was gelernt ... besten Dank!