C语言socket编程问题 急急急。。。。
老师给的实验题:基于socketc/s程序完成C/S下的FILE传输请各位高手帮忙提供一个程序来研究我现在茫然一片...
老师给的实验题:
基于socket c/s 程序 完成C/S下的FILE传输
请各位高手帮忙提供一个程序 来研究
我现在茫然一片 展开
基于socket c/s 程序 完成C/S下的FILE传输
请各位高手帮忙提供一个程序 来研究
我现在茫然一片 展开
展开全部
首先要写个什么都不干的c/s程序
s端:
int main(void)
{
int sockfd, confd;
struct sockaddr_in ser, cli;
int len;
sockfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(ser, sizeof(ser));
ser.sin_family = PF_INET;
ser.sin_port = htons(8080);
ser.sin_addr.s_addr = htonl(INADDR_ANY);//任何ip主机都接收
bind(sockfd, (struct sockaddr *)&ser, sizeof(ser));//绑定套接字
listen(scokfd, 20);
printf("receive message..........\n");
while(1)
{
len = sizeof(cil);
confd = accept(sockfd, (struct sockaddr *)&cli, &len);//confd用于处理网络连接
read();
write();
close(confd);
}
return 0;
}
------------------------------------------------------------------
c端
main()
{
int sockfd;
struct sockaddr_indest_addr;
sockfd = socket(PF_INET,SOCK_STREAM,0);
dest_addr.sin_family=PF_INET;
dest_addr.sin_port=htons(8080);//必须一样,要问为什么自己看端口号是干什么用的
dest_addr.sin_addr.s_addr=htonl(主机ip);
connect(sockfd,(structsockaddr*)&dest_addr,sizeof(struct sockaddr));
while(1)
{
write();
read();
if()
break;
}
close();
}
-------------------------------------------------------------
框架我给你搭好了。
中间部分由你自己回答。
记住传送文件的时候,同步很重要。
s端:
int main(void)
{
int sockfd, confd;
struct sockaddr_in ser, cli;
int len;
sockfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(ser, sizeof(ser));
ser.sin_family = PF_INET;
ser.sin_port = htons(8080);
ser.sin_addr.s_addr = htonl(INADDR_ANY);//任何ip主机都接收
bind(sockfd, (struct sockaddr *)&ser, sizeof(ser));//绑定套接字
listen(scokfd, 20);
printf("receive message..........\n");
while(1)
{
len = sizeof(cil);
confd = accept(sockfd, (struct sockaddr *)&cli, &len);//confd用于处理网络连接
read();
write();
close(confd);
}
return 0;
}
------------------------------------------------------------------
c端
main()
{
int sockfd;
struct sockaddr_indest_addr;
sockfd = socket(PF_INET,SOCK_STREAM,0);
dest_addr.sin_family=PF_INET;
dest_addr.sin_port=htons(8080);//必须一样,要问为什么自己看端口号是干什么用的
dest_addr.sin_addr.s_addr=htonl(主机ip);
connect(sockfd,(structsockaddr*)&dest_addr,sizeof(struct sockaddr));
while(1)
{
write();
read();
if()
break;
}
close();
}
-------------------------------------------------------------
框架我给你搭好了。
中间部分由你自己回答。
记住传送文件的时候,同步很重要。
展开全部
本机运行请把服务器的名字设为localhost或者127.0.0.1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询