- 博客(1)
- 资源 (2)
- 收藏
- 关注
原创 Python之socket
Python之socket编程初始(1)Socket 通常被称之为套接字,已经成为Windows,mac等操作系统共同遵守的网络编程标准。可以用它通过网络来实现不同计算机之间的通信,也可以实现相同主机内的不同进程之间的通信。用socket进行网络开发需要了解服务器和客户端的socket原语。有如下原语: socket():建立socket对象,参数通常包括使用的传输层协议类型,网络层地址类型等。
2018-01-19 16:25:53
284
socket linux2
客户端:
#include
#include // 包含套接字函数库
#include
#include // 包含AF_INET相关结构
#include // 包含AF_INET相关操作的函数
#include
#include
#include
#define PORT 6789
#define IP_ADDR "127.0.0.1"
#define SIZE 10240
int main()
{
struct tm *timeptr;
time_t timeval; //时间变量
char tm[50];
int sockfd; // 用于保存客户套接字标识符
int len; // 用于客户消息长度
struct sockaddr_in address; // 定义客户套接字地址结构体
int result;
sockfd = socket(AF_INET,SOCK_STREAM, 0); // 定义套接字类型
address.sin_family = AF_INET; // 定义套接字地址中的域
address.sin_addr.s_addr = htonl(INADDR_ANY);
address.sin_addr.s_addr = inet_addr(IP_ADDR); // 定义套接字地址
address.sin_port = htons(PORT); // 定义套接字端口
char buf[100]; // 定义要传送的消息
memset(buf,0,100);
char str[90]; //存贮输入的语句
char shmaddr[SIZE]; //接受服务器发送的全部聊天数据
int i=0;
char myname[100];
char say[10]={"说:"};
printf("欢迎来到聊天室,请输入你的姓名:");
scanf("%s",myname);
len = sizeof(address);
result = connect(sockfd, (struct sockaddr *) &address, len); // 请求连接
if (result == -1)
{
perror("Connect failed");
return 1;
}
printf("%s成功登录服务器:\n",myname);
pid_t pid;
pid=fork();
if(pid==-1)
{
printf("fork failed");
}
int sendbytes=0;
if(pid==0) //子进程用于发送数据
{
while(1)
{
scanf("%s",str);
(void)time(&timeval);
strcpy(tm,ctime(&timeval));
strcpy(buf,myname); //姓名传入buf中
strcat(buf,":");
strcat(buf,str);
strcat(buf," [");
strc
2016-01-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人