永发信息网

求一C语言写的tcp程序的源码,程序越简单越好,C++也可以,最好带注释

答案:3  悬赏:70  手机版
解决时间 2021-01-20 08:13
  • 提问者网友:遮云壑
  • 2021-01-19 20:39
求一C语言写的tcp程序的源码,程序越简单越好,C++也可以,最好带注释
最佳答案
  • 五星知识达人网友:琴狂剑也妄
  • 2021-01-19 21:58
最简单的那种?我给你写一个=,=
//服务器
#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

main()

{
//创建套接字

int serverSocket= socket(AF_INET,SOCK_STREAM,0);

struct sockaddr_in server_addr;

struct sockaddr_in clientAddr;

int addr_len = sizeof(clientAddr);
int client;
char buffer[200];

//创建地址

bzero(&server_addr,sizeof(server_addr));

server_addr.sin_family =AF_INET;

server_addr.sin_port = htons(5555);

server_addr.sin_addr.s_addr = htonl(INADDR_ANY);

//绑定

bind(serverSocket,(struct sockaddr *)&server_addr,sizeof(server_addr));
//帧听

listen(serverSocket,5);
printf("客户端发过来的 :\n");
//接收
client=accept(serverSocket,(sockaddr *)&clientAddr,(socklen_t*)&addr_len);
printf("客户端发过来的 :\n");
while(1)
{
if(recv(client,buffer,sizeof(buffer),0)>0)
printf("客户端发过来的 : %s\n",buffer);
}
return 0;
}

//客户端
#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

main()

{

struct sockaddr_in serverAddr;

int clientSocket=socket(AF_INET,SOCK_STREAM,0);

char sendbuf[200];

//创建地址信息

serverAddr.sin_family=AF_INET;

serverAddr.sin_port=htons(5555);

serverAddr.sin_addr.s_addr=inet_addr("127.0.0.1");

//连接服务器

connect(clientSocket,(sockaddr*)&serverAddr,sizeof(serverAddr));

printf("连接目标主机中.....\n连接完成......\n");

//

while(1)

{

printf("请输入发给服务器的数据 : ");

scanf("%s",sendbuf);

//strcmp函数作用,比较两个东东(按ASCII值大小相比较),相同就==0。

if(strcmp(sendbuf,"x")==0)

break;

send(clientSocket,sendbuf,sizeof(sendbuf),0);

}

close(clientSocket);

return 0;

}追问g:\tcp\新建文件夹\cpp1.cpp(9) : fatal error C1083: Cannot open include file: 'netdb.h': No such file or directory错误,是不是要用wintc才行,我想顺便问下,怎样去运行服务端和客户端,还是只要在上面编译成功运行就行,就是怎样用这两程序追答先运行服务器,再运行客户端啊。。。
然后客户端就可以发信息给服务器了
这个都是在LINUX下编程的吧=。=追问谢谢了
全部回答
  • 1楼网友:鸠书
  • 2021-01-20 00:22
我这有。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯