#include <stdio.h>
#include <signal.h>
#include <string.h>
#include <stdlib.h>
#include <pthread.h>
#include <sys/select.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <linux/in.h>
#include <unistd.h>
#include <fcntl.h>
int main()
{
int max,i;
int fd = 0;
int se_num;
int sock,client_sock;
int num;
fd_set rset;
char buf[512];
struct sockaddr_in server_addr;
struct sockaddr client_addr;
int len = sizeof(struct sockaddr);
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(2631);
/* it is ok */
//server_addr.sin_addr.s_addr = htonl(0x7f000001);
inet_aton("127.0.0.1",&server_addr.sin_addr);
int fl_sock;
if((sock = socket(AF_INET,SOCK_STREAM,0)) < 0) {
perror("socket");
return -1;
}
if((bind(sock,(struct sockaddr *)&server_addr,sizeof(struct sockaddr))) < 0) {
perror("bind");
return -1;
}
if((listen(sock,5)) < 0) {
perror("listen");
return -1;
}
if((client_sock = accept(sock,&client_addr,&len)) < 0)
{
perror("accept");
return -1;
}
fprintf(stderr,"client_sock = %d\n",client_sock);
while(1) {
memset(buf,0,sizeof(buf));
if((num=read(client_sock,buf,sizeof(buf))) == 0) {
fprintf(stderr,"client is closed\n");
return -1;
}
printf("client(num=%d): %s\n",num,buf);
}
}
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#include <sys/select.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <linux/in.h>
#include <unistd.h>
#include <fcntl.h>
void sig_pipe(int a)
{
printf("receive signal pipe\n");
exit(-1);
}
int main()
{
int sock,client_sock;
fd_set rset;
int num;
char buf[] = "hello world\0r";
struct sockaddr_in server_addr;
struct sockaddr client_addr;
int len = sizeof(struct sockaddr);
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(2631);
inet_aton("127.0.0.1",&server_addr.sin_addr);
signal(SIGPIPE,sig_pipe);
if((sock = socket(AF_INET,SOCK_STREAM,0)) < 0) {
perror("socket");
return -1;
}
if(connect(sock,(struct sockaddr *)&server_addr,sizeof(struct sockaddr)) < 0) {
perror("connect");
return -1;
}
while(1) {
printf("write %d\n",write(sock,buf,sizeof(buf)));
sleep(1);
}
}
分享到:
相关推荐
通过以上步骤,我们可以实现C语言中的基本Socket通信。在实际项目中,可能还需要考虑多线程、异步I/O、SSL加密等高级特性,以满足更复杂的需求。如果你正在使用名为`SocketComSimulator`的程序,它很可能是为了模拟...
在Windows环境下进行网络编程时,Socket通信是一种常用的技术。Socket接口是操作系统提供的网络通信API...通过实践上述代码,初学者可以掌握Windows下Socket通信的基本原理和操作,为进一步深入网络编程打下坚实基础。
本文实例讲述了Python基本socket通信控制操作。分享给大家供大家参考,具体如下: python — 基本socket通信控制(控制在celie.txt文件中主机IP地址可以发送信息,并返回对应的客户端IP、时间戳、发送的信息) ...
Socket通信在IT行业中是网络编程的基础,特别是在C#这样的多平台开发环境中,Socket通信库的使用至关重要。...通过理解Socket通信的基本原理和C#中的相关类库,开发者可以构建出高效、稳定的服务端和客户端应用程序。
Socket通信的基本步骤包括:创建ServerSocket,等待客户端连接,创建Socket对象,通过输入/输出流进行数据交换,最后关闭连接。 在Mina与Socket通信的实现中,服务端通常使用Mina来创建一个Acceptor,监听特定端口...
**C++ Socket通信库** C++ Socket通信库是用于实现网络通信的一种工具,它基于操作系统提供的Socket接口,为开发者提供了一种在C++程序中进行网络数据交换的标准方法。Socket库简化了网络编程,允许程序员通过调用...
首先,要理解Socket通信的基本概念。Socket可以视为通信的两端,一个作为服务器端(Server Socket),等待客户端的连接请求;另一个作为客户端端(Client Socket),主动发起连接请求。一旦连接建立,双方就可以通过...
在本文中,我们将深入探讨"简单的socket通信",包括服务端和客户端的基本概念、实现方式以及如何在Visual Studio 2015环境下进行开发。 首先,我们需要了解什么是Socket。Socket在计算机网络中是一个接口,它为应用...
Socket通信是一种基于TCP/IP协议族的网络通信方式,它允许两个...以上是C#和Android间Socket通信的基本原理和实现方式,实际开发中还需要根据具体业务需求进行调整优化,例如数据序列化、心跳检测、断线重连等功能。
Socket 通信基本流程图 在计算机网络通信中,Socket 是一...Socket 通信基本流程图是 Socket 通信机制的核心组成部分,了解 Socket 通信基本流程图对于深入理解 Socket 通信机制和解决 Socket 通信问题具有重要意义。
综上所述,Android与PC之间的Socket通信涉及TCP协议的理解、Socket编程的基本步骤、异常处理、权限管理以及可能的第三方库使用。开发者需要对这些知识点有深入的了解和实践,才能实现稳定、高效的网络通信。
Socket通信是一种基于TCP/IP协议族实现的网络通信方式,它允许两台计算机通过网络进行双向通信。在文件传输中,Socket通信提供了一种灵活、高效的方法,尤其适用于大数据量或者跨平台的文件交换。以下是对Socket通信...
以上就是Socket通信的基本流程和原理,实际应用中,可能还需要处理异常、超时、多线程/多进程等问题,以提高程序的健壮性和并发能力。通过学习和实践Socket通信,你将能够构建起网络应用的基础,例如聊天程序、文件...
在Android平台上进行网络通信时,Socket通信是一种常见且重要的方式,尤其在实现聊天应用时。本文将深入探讨如何在Android中实现基于Socket的客户端和服务端通信,以构建一个简单的聊天应用。 首先,让我们理解...
首先,我们需要理解Socket通信的基本流程: 1. **服务器端**: - 创建`ServerSocket`实例,指定一个端口号,监听该端口等待客户端连接。 - 使用`accept()`方法接收客户端的连接请求,这会阻塞直到有客户端连接。 ...
C#中的Socket通信是网络编程中的重要组成部分,它允许程序通过网络进行数据交换。Socket提供了低级别的、面向连接的、基于TCP/IP协议的通信服务。在这个"**c# Socket通信源码**"中,我们主要会看到客户端和服务器端...
Socket通信是计算机网络编程中的重要概念,特别是在C#这样的高级编程语言中,它提供了一种在不同设备间进行数据传输的机制。本压缩包“Socket通信.zip”包含了一个基于C#实现的Socket通信实例,主要涉及到TCP协议的...
而Socket通信则是网络编程的基础,它允许不同计算机之间的应用程序进行数据交换。本篇文章将深入探讨如何使用MFC来实现Socket通信。 首先,我们需要了解Socket接口的基本概念。Socket是一种低级别的网络通信接口,...
C#编程Socket通信详解 C# Socket通信详解是指在C#编程语言中,使用Socket实现网络通信的过程。Socket是网络编程的基础概念,指的是在网络通信中,一个进程连接另一个进程的 endpoint 的抽象表示。 在C#中,...
3. **Android Socket通信的基本流程** - **服务器端(Server)**: - 创建ServerSocket,指定监听的端口号。 - 使用ServerSocket的`accept()`方法等待客户端连接,返回一个Socket对象。 - 通过Socket对象的输入...