当前位置:  技术问答>linux和unix

新手求助。。。关于最简单的服务器/客户端程序

    来源: 互联网  发布时间:2016-12-28

    本文导语:  下面是我写的服务器程序, 但是每次运行到时候就卡住不动了, 求各位大神指点 #include  #include  #include  #include  #include  #include  #include  #include  int main(int argc, char **argv) { int listenfd, connfd; socklen_t len; struc...

下面是我写的服务器程序, 但是每次运行到时候就卡住不动了, 求各位大神指点
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

int main(int argc, char **argv)
{
int listenfd, connfd;
socklen_t len;
struct sockaddr_in servaddr, cliaddr;
char buff[255];
int n;

if((listenfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
printf("error");}

bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family =AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(2000);

if(bind(listenfd,(struct sockaddr *)&servaddr,sizeof(servaddr))==-1)
  {
   perror("bind error");
   exit(1);
  }
printf("bind success");

if(listen(listenfd,10)==-1) {
   perror("listen");
   exit(1);
  }
printf("server is run.../n");

while(1) {
   len = sizeof(cliaddr);

   if((connfd = accept(listenfd,(struct sockaddr *) &cliaddr,&len))==-1)
   {
    perror("accept");
    exit(1);
   }

   //showClient(cliaddr);

   if((n = recv(connfd,buff,sizeof(buff),0))==-1)
    {
     perror("recv");
     exit(1);
    }
    buff[n]= '0';
    printf("recieved %d bytes./n",n);
    printf("the message is:%s/n",buff);


    if(send(connfd,buff,strlen(buff),0)==-1)
     perror("send");
    close(connfd);
    close(listenfd);
}

/*
struct sockaddr_in client_addr;
void showClient(struct sockaddr_in client_addr) {
   printf("/nThe IP of client is:%s",inet_ntoa(client_addr.sin_addr));
   printf("/nThe Port of client is:%d/n",ntohs(client_addr.sin_port));
}
*/
}

|
你的这个不是什么卡住不动的问题,而是你还要运行客户端才能执行.....你把客户端的发上来看看

|
accept挂起等待客服端连接

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 新手如何加入开源项目 有什么好的c++,java 开源适合新手 请指点!
  • JDBC的问题,新手高手都来看看吧,说不定能帮帮我这个新手呢,谢谢!
  • 想找共同学习Linux的新手,一起学习,共同成长
  • 新手关于驱动开发的疑问
  • 新手有关linux的问题!
  • 新手急求~~~~~~~~~~~~~~~~~~~
  • 新手学习该用哪个版本
  • 面向新手的终端辅助工具 Clicompanion
  • 我是个新手,请各位老兄给介绍基本好书?
  • 新手请教啦~~能不能帮忙推荐几本书
  • 我是新手
  • 新手:用WEB页面修改数据库中的表?
  • Java新手上路之问题
  • 我是一名新手,请问如何学java
  • (新手)这里怎么看到300篇以外的所有文章?(不是搜索)
  • 新手求助!
  • 新手上路,怎样判断网卡是否安装成功?
  • !!新手求救!!
  • 新手在此多谢了:SUN的宠物商店
  • 新手:用WEB页面修改数据库中的表? iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3