cln.c
来自「linux下通讯软件.实现了linux下一对多的通讯.」· C语言 代码 · 共 60 行
C
60 行
#include "kapp.h"
int main(int argc,char * argv[])
{
int sckCln,numbytes;
int iRsl = 0;
struct sockaddr_in srv;
char tmpbuf[128];
char buf[MAXDATASIZE];
struct hostent *he;
pthread_t tid;
AppInit();
if(argc !=2 )
{
sprintf(tmpbuf,"Usage: %s <IP Address>",argv[0]);
ShowTips(tmpbuf);
KExit("Try again!");
}
if((he = (struct hostent *)gethostbyname(argv[1])) == NULL)
{
KExit("gethostbyname() error");
}
if((sckCln = socket(AF_INET,SOCK_STREAM,0)) == -1)
{
KExit("Create Socket failed!");
}
bzero(&srv,sizeof(srv));
srv.sin_family = AF_INET;
srv.sin_port = htons(PORT);
srv.sin_addr = *((struct in_addr *)he->h_addr);
if(connect(sckCln,(struct sockaddr*)&srv,sizeof(struct sockaddr)) == -1)
{
KExit("connect() failed!");
}
pthread_create(&tid,NULL,KRecv,(void*)sckCln);
ShowTips("Input message for transfering to server:");
while(1)
{
bzero(buf,MAXDATASIZE);
GetSendingMsg(buf);
numbytes = send(sckCln,buf,strlen(buf),0);
if(numbytes == -1) KExit("send() failed!");
if(strncmp(buf,"exit",4) == 0) break;
}
close(sckCln);
AppClean();
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?