RT

解决方案 »

  1.   

    typedef struct
    {
    ......
    }MyStruct;
    ....
    MyStruct aaaaa;
    ....
    send(
      s,//socket              
      (char*)&aaaaa,
      sizeof(MyStruct),               
      flags//参数              
    );recv 用法相同
      

  2.   

    楼上的,我问一句,如果数据量太大会不会发生接收到的数据小于sizeof(MyStruct)的情况?
      

  3.   

    也可以把CSocket和CArchive合用,再把你的结构写到CObject派生的类里,重写该类的序列化函数.
      

  4.   

    用流式套接字的话可能会一次receive只得到结构的一部分,或一次得到几个结构的数据。
    或者用 UDP ?? 
    参考msdn吧。
      

  5.   

    这个问题不会的,不过,你要设置一下字节对齐方式,否则你的sizeof(struct)可能会返回你觉得不正确的值,而有的时候比较大数据量及要求安全性的通信都要加校验位,这个就很复杂了,因为涉及的算法很多很多
      

  6.   

    因为我刚开始学网络编程,所以大家能不能说的详细一点:
    to vagabondkq:如何将收到的流转换成结构体指针?
    to mfc168:怎么样设置字节对齐方式?
      

  7.   

    project->settings->c/c++ ->category->code generate ->Struct member alignment->1 Byte
      

  8.   

    请问这里的1byte代表什么意思啊,跟2byte,4byte等有什么区别阿?