码迷,mamicode.com
首页 > 其他好文 > 详细

socket

时间:2019-03-26 17:05:12      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:size   一个   ons   else   lease   orm   define   mem   socket   

#include <stdio.h>

#include <sys/socket.h>

#include <sys/types.h>

#include <stdlib.h>

#include <netinet/in.h>

#include <errno.h>

#include <string.h>

#include <arpa/inet.h>

#include <unistd.h>

#define MAXLINE 1024

int main(int argc,char **argv)

{

char *servInetAddr = "127.0.0.1";

int socketfd;

struct sockaddr_in sockaddr;

char recvline[MAXLINE], sendline[MAXLINE];

int n;



if(argc != 2)

{

printf("client <ipaddress> \n");

exit(0);

}



socketfd = socket(AF_INET,SOCK_STREAM,0);

memset(&sockaddr,0,sizeof(sockaddr));

sockaddr.sin_family = AF_INET;

sockaddr.sin_port = htons(10004);

inet_pton(AF_INET,servInetAddr,&sockaddr.sin_addr);

if((connect(socketfd,(struct sockaddr*)&sockaddr,sizeof(sockaddr))) < 0 )

{

printf("connect error %s errno: %d\n",strerror(errno),errno);

exit(0);

}



printf("send message to server\n");



fgets(sendline,1024,stdin);



if((send(socketfd,sendline,strlen(sendline),0)) < 0)

{

printf("send mes error: %s errno : %d",strerror(errno),errno);

exit(0);

}



close(socketfd);

printf("exit\n");

exit(0);

}

#include <stdio.h>

 #include <sys/socket.h>

 #include <sys/types.h>

 #include <string.h>

 #include <netinet/in.h>

 #include <stdlib.h>

 #include <errno.h>

 #include <unistd.h>

 #include <arpa/inet.h>

 

 #define MAXLINE 1024

 int main(int argc,char **argv)

 {

 int listenfd,connfd;

 struct sockaddr_in sockaddr;

 char buff[MAXLINE];

 int n;

 

 memset(&sockaddr,0,sizeof(sockaddr));

 

 sockaddr.sin_family = AF_INET;

 sockaddr.sin_addr.s_addr = htonl(INADDR_ANY);

 sockaddr.sin_port = htons(10004);

 

 listenfd = socket(AF_INET,SOCK_STREAM,0);

 

 bind(listenfd,(struct sockaddr *) &sockaddr,sizeof(sockaddr));

 

 listen(listenfd,1024);



 

 printf("Please wait for the client information\n");

 

 for(;;)

 {

     if((connfd = accept(listenfd,(struct sockaddr*)NULL,NULL))==-1)

     {

     printf("accpet socket error: %s errno :%d\n",strerror(errno),errno);

     continue;

     }

    /* else

     {

         //开线程接收某一个CLENT的数据

         * n = recv(connfd,buff,MAXLINE,0);

         * buff[n] = ‘\0‘;

         *  printf("recv msg from client:%s",buff);

         * close(connfd);

         *

         *

         }*/

 

     n = recv(connfd,buff,MAXLINE,0);

     buff[n] = ‘\0‘;

     printf("recv msg from client:%s",buff);

     close(connfd);

 }

 close(listenfd);

 }



socket

标签:size   一个   ons   else   lease   orm   define   mem   socket   

原文地址:https://www.cnblogs.com/Anthonylovelorie/p/10600928.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!