- 论坛徽章:
- 0
|
能看到哈,在“lo”里。我的代码
// 客户端
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
typedef struct sockaddr SA;
int main()
{
struct sockaddr_in client_addr;
char str[1024];
int client_fd;
client_fd = socket(AF_INET, SOCK_STREAM, 0);
if(client_fd == -1)
{
printf("socekt is failed!...\n");
return -1;
}
printf("socket is ok!...\n");
bzero(&client_addr, sizeof(client_addr));
client_addr.sin_family = AF_INET;
client_addr.sin_port = htonl(6666);
client_addr.sin_addr.s_addr = inet_addr("127.0.0.1");
if(-1 == connect(client_fd, (SA *)&client_addr, sizeof(client_addr)) )
{
printf("connect is failed!...\n");
printf("%d\n", errno);
return -1;
}
printf("connect is ok!...\n");
if(read(stdin, str, 1024) < 0)
{
printf("read is failed!...\n");
return -1;
}
while(1)
{
if(write(client_fd, str, strlen(str)) < 0)
{
printf("write is failed!...\n");
return -1;
}
}
close(client_fd);
return 0;
}
//服务端
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
typedef struct sockaddr SA;
int main()
{
int serverfd, acceptfd;
struct sockaddr_in server_addr;
char buf[1024];
serverfd = socket(AF_INET, SOCK_STREAM, 0);
if(serverfd == -1)
{
printf("socket is failed!...\n");
return -1;
}
printf("socket is ok!...\n");
bzero(&server_addr, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = htonl(INADDR_ANY);
server_addr.sin_port = htons(6666);
if(-1 == bind(serverfd, (SA *)&server_addr, sizeof(server_addr)))
{
printf("bind is failed!...\n");
return -1;
}
printf("bind is ok!...\n");
if(-1 == listen(serverfd, 1024))
{
printf("listen is failed!...\n");
return -1;
}
printf("listen is ok!...\n");
int size;
size = sizeof(server_addr);
while(1)
{
if(-1 == ( acceptfd = accept(serverfd, (SA *)&server_addr, &size) ))
{
printf("accept is failed!...\n");
return -1;
}
printf("accept is ok!...\n");
read(acceptfd, buf, 1024);
write(stdout, buf,1024);
close(acceptfd);
}
close(serverfd);
return 0;
}
|
|