c - 使用套接字发送文件

标签 c sockets

这段代码有什么问题(C - Linux)?

我想从服务器接收一个文件,一旦我有一个字节,我就立即发送这个字节。但它不起作用。这很重要。

int Recv_File(int server,int client,char *buffer_ricezione,size_t dimensione_file){

    ssize_t nwritten,nread;
    size_t n;
    char c;

    for (n=1; n<dimensione_file; n++) {
        nread = recv(server,&c,1,0);
        if (nread == 1) {
            nwritten = send(client,&c,1,0);
        }else{
            return -1; // chiudo connessione con il client
        }
    }
    return 1;
}

谢谢

最佳答案

n 应该从 0 开始

for (n=0; n<dimensione_file; n++) {
    nread = recv(server,&c,1,0);
    if (nread == 1) {
        nwritten = send(client,&c,1,0);
    }else{
        return -1; // chiudo connessione con il client
    }
}

关于c - 使用套接字发送文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17310628/

相关文章:

c++ - QUdpSocket : Cannot receive datagram

c - TCP sendto 返回长度但服务器没有收到任何东西

c - float 不能按预期工作

c - 如何使用内核哈希表 API?

c++ - 如何确定线程模拟级别

c# - 如何调试消失的应用程序

python - Bluez/Python 缓冲导致蓝牙连接延迟

Python tcp 套接字客户端

我可以在 C 中使用 asm() 代替 asm 吗?

c++ - 警告 : "variable may be used uninitialized in this function" in a multi-mode structured function