char型変数の先頭4byteにint型を入れたい
Posted: 2010年4月22日(木) 19:30
こちらの質問・解答はいつも勉強させられています。
この度は一つ、質問をさせてください。
char型の変数の先頭4byteにint型のデータをいれたいのですが、
どうにも上手くいきません。
#define HEADER_SIZE 4
struct tPARA_DATA
{
int x;
int y;
};
char SendData[ sizeof( tPARA_DATA ) + HEADER_SIZE];
ZeroMemory(SendData, sizeof(SendData));
SendData[0] = 180;
memcpy( &SendData[HEADER_SIZE], (BYTE *)&pSend, sizeof( tPARA_DATA) );
このようにすると、先頭1byteにはデータがはいるのですが
のこり3byteがあまってしまいます。
また、1byteへint型4byteを入れようとすると、ERROR(C4305: '=' : '' から 'char' へ切り詰めます。)
とでて、数字がおかしなものになってしまいます。
どうにかうまく解決する方法はないでしょうか?
この度は一つ、質問をさせてください。
char型の変数の先頭4byteにint型のデータをいれたいのですが、
どうにも上手くいきません。
#define HEADER_SIZE 4
struct tPARA_DATA
{
int x;
int y;
};
char SendData[ sizeof( tPARA_DATA ) + HEADER_SIZE];
ZeroMemory(SendData, sizeof(SendData));
SendData[0] = 180;
memcpy( &SendData[HEADER_SIZE], (BYTE *)&pSend, sizeof( tPARA_DATA) );
このようにすると、先頭1byteにはデータがはいるのですが
のこり3byteがあまってしまいます。
また、1byteへint型4byteを入れようとすると、ERROR(C4305: '=' : '' から 'char' へ切り詰めます。)
とでて、数字がおかしなものになってしまいます。
どうにかうまく解決する方法はないでしょうか?