|

楼主 |
发表于 2005-3-17 08:49:06
|
显示全部楼层
我的程序中没有创建管道,我是严照教程编写的,只是省略了出错检验,刚开始学习LINUX下编程,许多常识性的东西还不知道,望包涵。源码如下:
-
- /*
- client.c
- */
- #include <stdio.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <netdb.h>
- char * hostname="127.0.0.1";
- int port=7999;
- int main(int argc,char *argv[]){
- char buf[8192];
- char message[256];
- int socket_desc;
- struct sockaddr_in pin;
- struct hostent *server_host_name;
- char * str="a default test string";
- server_host_name=gethostbyname(hostname);
- bzero(&pin,sizeof(pin));
- pin.sin_family=AF_INET;
- pin.sin_addr.s_addr=htonl(INADDR_ANY);
- pin.sin_addr.s_addr=((struct in_addr *)(server_host_name->h_addr))->s_addr;
- pin.sin_port=htons(port);
- socket_desc=socket(AF_INET,SOCK_STREAM,0);
- printf("kaishi connect\n");
- if(connect(socket_desc,(struct sockaddr *)&pin,sizeof(pin))==(-1)) {printf("ohyear!\n");}
- printf("zhunbei fashe\n");
- send(socket_desc,str,strlen(str),0);
- printf("sent\n");
- recv(socket_desc,buf,8192,0);
- printf("get:\n%s\n",buf);
- close(socket_desc);
- }
复制代码 |
|