我需要快速实现一个非常小的C或C++ TCP服务器/客户端解决方案。这只是简单地从一台计算机传输一个字节数组到另一台计算机,不需要可扩展性和过于复杂的功能。越简单越好,如果可以的话尽可能地快速和粗略。
我尝试使用此教程中的代码,但我无法在Linux下使用g++构建它:http://www.linuxhowtos.org/C_C++/socket.htm
如有可能,我想避免使用第三方库,因为我运行该系统的计算机相当受限制。这必须是C或C++,因为现有的应用程序已经实现了这种语言。
感谢emg-2的答案,我成功地使上述代码示例与C++兼容,并采用以下步骤:
将这些头文件添加到客户端和服务器:
#include <cstdlib>
#include <cstring>
#include <unistd.h>
在 server.c 中,将 clilen 的类型更改为 socklen_t。
int sockfd, newsockfd, portno/*, clilen*/;
socklen_t clilen;
在client.c中,更改以下行:
if (connect(sockfd,&serv_addr,sizeof(serv_addr)) < 0) { ... }
收件人:
if (connect(sockfd,(const sockaddr*)&serv_addr,sizeof(serv_addr)) < 0)