背景:
在套接字的一端,C#中定义了固定的结构体,然后用该结构体给C++端的另外一端发送消息。
代码:
结构体如下所示:
typedef struct _Info
{
char name[16];
char cipher[16];
char signature[256];
}Info;
C#端代码如下:
Info myInfo;
string name = "abcd";
myInfo.name = name.PadRight(16).ToCharArray();
string cipher = "1234";
myInfo.cipher=cipher.PadRight(16).ToCharArray();
string signature = "it is a new test";
myInfo.signature =signature.PadRight(256).ToCharArray() ;
//转为字节数组
Byte[] sendBuf = StructTranslate.StructToBytes(myInfo);
//向对方发送
sockStream.Write(sendBuf, 0, sendBuf.Length);