CStrings

  • Themenstarter Themenstarter herotac
  • Beginndatum Beginndatum
Habe zu diesem Thema noch eine Frage:

Code:
m_strSend = 0x02;
strBox = m_nBoxId;
m_strSend.Format("%d",strBox);
nsenden.Format("%d", 32, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32);
m_strSend += nsenden;
m_strSend += 0x03;
strcpy(m_naSend,m_strSend);

in m_nBoxId steht 1001!!

1)
steht in strBox ebenfalls 1001 nur in Charakter schreibweise wenn ich
Code:
 strBox = m_nBoxId;
durchführe
2)
steht in m_strSend 1001 wenn ich
Code:
 m_strSend.Format("%d",strBox);
durchführe in decimalschreibweise also 49 48 48 49 ?
3)
beinhaltet m_naSend was ein char* ist den ganzen Cstring m_strSend

bitte um rasche Hilfe
Danke
 
C++:
strBox = m_nBoxId;
Das funktioniert nicht, da es sich um unterschiedliche Datentypen handelt, die auch nicht impliziert konvertiert werden können. Du solltest einen Compilerfehler bekommen.

C++:
nsenden.Format("%d", 32, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32);
Im String steht "32". Der Formatstring erwartet nur einen Parameter, also wird nur die 32 verwendet. Die Angabe %d sorgt dafür, das der Parameter als Zahl interpretiert wird.

Das sind eigentlich alles Sachen, die du schnell mal selbst ausprobieren kannst.
Ansonsten, was soll denn nun letztendlich im zu sendenden String stehen? Aus deiner etwas unübersichtlichen Programmierung und der Fragestellung werde ich nicht so richtig schlau :-)

Gruß
MCoder
 
Zurück