typedef struct sendinfo {
char name[200]; //
} ;vector<sendinfo>C_USERLIST;sendinfo s;C_USERLIST.push_back(s);这时我用什么方法可以把这个 _USERLIST 传给客户端请帮忙说的详细一点。入门者...谢谢...

解决方案 »

  1.   

    我想应该是这样
    send(s,&C_USERLIST,sizeof(sendinfo)*C_USERLIST.size());
    //C_USERLIST.size() 容器里的元素数量,不知道是不是这么求。
      

  2.   

    过不去。 好像得把这个 VECTOR 串行化。但不知道如何串行化。呵
      

  3.   

    vector<sendinfo>C_USERLIST;Server SS;
    SS.C_SendLinksUser( C_USERLIST);
    Server::C_SendLinksUser(vector<sendinfo>& v) {
    char SendBuffer[1024];
    memset(SendBuffer,0,sizeof(SendBuffer));
    sprintf(SendBuffer,"%s",v);

    printf("%s",SendBuffer);
    getchar();

    这样可以编译通过,但是 PRINTF 时 提示系统遇到问题须关闭窗口 ...
    该 如何更改呢?
    }
      

  4.   

    你必须把vector里面的数据一起传过去,传个空结构是不可以的
    数据传过去以后还要把指针全都置位.........不然就会发生致命错误
    还不如顺序传输数据呢
      

  5.   

    你在这边把要传vector中的数据一个发一个包过去。在接收的位置得到要接收vector的时候。把接收到的数据一个个放到直接的预备好的vector中。变通下咯。
           ps :在发送和接收vector的时候搞些控制命令。提示要接受vector。 
      

  6.   

    typedef struct sendinfo {
    char name[200];//
    }SendInfo,Info*;Info buf;send(SOKET,buf->name,sizeof(buf->name),0);