Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++如何将客户端逐个发送列表INT>值?_C++_List_Tcp_Int - Fatal编程技术网

C++如何将客户端逐个发送列表INT>值?

C++如何将客户端逐个发送列表INT>值?,c++,list,tcp,int,C++,List,Tcp,Int,基本上,我有一个包含许多不同整数的列表,我想将这些数据从客户端一个接一个地发送到服务器?首先,除非一个接一个地发送它们是绝对重要的,否则每次发送一个完整的列表几乎总是更好的 至于如何发送它们,通常需要将整数放在一个缓冲区中,将每个整数转换为网络顺序,然后将整个缓冲区发送给接收器。虽然我还没有测试过这段代码,但按照一般顺序应该可以做到: void send_ints(socket dest, std::list<int> const &in) { std::vecto

基本上,我有一个包含许多不同整数的列表,我想将这些数据从客户端一个接一个地发送到服务器?

首先,除非一个接一个地发送它们是绝对重要的,否则每次发送一个完整的列表几乎总是更好的

至于如何发送它们,通常需要将整数放在一个缓冲区中,将每个整数转换为网络顺序,然后将整个缓冲区发送给接收器。虽然我还没有测试过这段代码,但按照一般顺序应该可以做到:

void send_ints(socket dest, std::list<int> const &in) { 
    std::vector<int> netdata;

    std::transform(in.begin(), in.end(), std::back_inserter(netdata), ::ntohl);
    send(dest, (char *)&netdata[0], net_data.size() * sizeof(netdata[0]), 0);
}

根据您的偏好,您可能更喜欢使用static_cast,而不是我上面使用的C样式的cast。

您必须更具体一些。你想怎么寄?您是否与服务器建立了连接?什么协议?可以是socet,也可以是hastowebservice。我想通过TCP发送列表,并且我已经连接了服务器和客户端。现在,我需要将列表数据从客户端发送到服务器。我知道send方法基于char*或char[]。我不知道如何处理这份清单。非常感谢你。你可以把整数列表变成一个字符串,然后在另一边解析出来。你有多少个整数?它可以很好地将int转换为字符串snprintf f.e,并用send发送每个字符串。我有25个不同的值。我必须将值逐个发送到服务器。我应该使用哪种方法将其转换为字符串?谢谢,我将尝试这种方法。