0

次の状況を得ました:

AnsiString IP_Adress;
int Port;
BYTE ReadBuffer[2048];

これを使用すると完璧に機能します:

memcpy(&Port, &ReadBuffer[48],1);

Potnummer を読み取るには 2 バイトが必要なので、memcpy の後のポートの内容は次のとおりです。 Port == 5000;

しかし、AnsiString に同じ方法を使用すると失敗します。

memcpy(&IP_Adress, &ReadBuffer[44],3);

その後、IP_Adress は空ではありませんが、ReadBuffer と同じものが含まれていません。

ReafBuffer[44] == 192
ReafBuffer[45] == 168
ReafBuffer[46] == 123
ReafBuffer[47] == 240

IP_Adress 位置 0 ~ 3 の内容:

0x27 0xEC 0x77 0x00

4

0 に答える 0