我编写了一个简单的服务器-客户端程序,其中服务器和客户端使用命名管道进行通信。一切正常,但我有一个简单的问题:在客户端部分,我分配了要发送到服务器的味精方式 char *msg=malloc(sizeof(char)); 然后我使用gets(msg)从用户那里读取它。最后我用write()函数将消息写入管道。现在在服务器部分,我也用 malloc 分配缓冲区,但我不知道 read() 函数的第三个参数应该是什么......因为我可以从手册页读取的第三个参数中理解是你的字节数想阅读,我假设这是客户端发送的 msg 的 strlen。问题是在阅读之前我无法知道这一点。有没有办法让这项工作,或者我应该基本上使用 MAX_SIZE 作为服务器部分的缓冲区。提前感谢您的时间和帮助。:)
问问题
681 次