【发布时间】:2014-03-20 16:53:13
【问题描述】:
我正在linux环境下用c开发客户端服务器应用程序。
我使用了一些通信协议。
客户端可以发送以下两种结构中的任何一种。
1)
typedef struct
{
String userName;
} user;
typedef struct
{
msgId = 20;
user u1;
} msg1;
2)
typedef struct
{
String mailId;
} mail;
typedef struct
{
msgId = 30;
mail m1;
} msg2;
现在假设客户端在将数据填充到结构后将 msg2 发送到服务器。
write (socket_fd, (struct sockaddr*)&msg2, sizeof(msg2));
在服务器端,当我收到结构时
read (client_socket_fd, &a, sizeof(a)); // here I have written &a because I do not know which structure I received.
那么,我怎么知道服务器端接收到的结构是什么?
请帮助我,如果问题看起来很愚蠢,请建议我阅读文章或主题名称。
谢谢你。
【问题讨论】:
-
什么是
String?请记住,您要传输的数据必须是 POD。
标签: c sockets structure protocols