Gast
#3890352
Hallo.
Ich habe die Funktion GetData(), die mir einen Zeiger auf unsigned Daten
bereitstellt. Da ich innerhalb dieser Daten viel ersetzen und
vergleichen muss, möchte ich die std::string Funktionen nutzen.Daher
erzeuge ich mir einen string der die Daten aufnimmt.
Meine Frage nun:
Wenn ich strData.find aufrufe mit 0xff wird die warning:c4309
ausgegeben(visual studio), was besagt, das ein unsigned char nicht in
char passt.
Denn Wert findet er trotzdem.Warum wird nun wenn ich caste(siehe unten)
die Warnung weggebügelt? Was geht da intern vor?
#define VALUE 0xff
GetData(unsigned char * Data, int length)
{
std::string strData(Data, Data+length);
strData.find(VALUE,0); //generiert c4309
str.Data.find((unsigned char)VALUE,0);//kein c4309
}
Danke.