C\C++ 网络编程

xiangweixing 2008-10-23 03:00:25
在C\C++中如何网络编程,有实例代码的来
...全文
72 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
小马喝水 2008-10-23
  • 打赏
  • 举报
回复
//服务器
#include<Winsock2.h>
#include<stdio.h>

void main()
{
//加载套接字库
WORD wVersionRequested;
WSADATA wsaData;
int err;

wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if( err !=0 ){
return;
}

if( LOBYTE( wsaData.wVersion ) !=1 ||
HIBYTE( wsaData.wVersion ) !=1 )
{
WSACleanup();
return;
}

//创建用于监听的套接字
SOCKET sockSrv = socket( AF_INET, SOCK_STREAM, 0 );

SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = htonl( INADDR_ANY );
addrSrv.sin_family = AF_INET;
addrSrv.sin_port = htons( 6000 );

//绑定套接字
bind( sockSrv, (sockaddr *)&addrSrv, sizeof(sockaddr) );

//将套接字设为监听模式,准备接收客户请求
listen( sockSrv , 5 );

SOCKADDR_IN addrClient;
int len = sizeof( SOCKADDR );

while( 1 )
{
//等待客户的到来
SOCKET sockConn = accept( sockSrv, (sockaddr *) &addrClient, &len );
char sendBuf[100];
sprintf( sendBuf, "Welcome %s to http://www.sunxin.org!",
inet_ntoa( addrClient.sin_addr ) );

//发送数据
send( sockConn, sendBuf, strlen( sendBuf )+1, 0 );

char recvBuf[100];
//接收数据
recv( sockConn, recvBuf, 100, 0 );

//打印接收的数据
printf( "%s\n", recvBuf );

//关闭套接字
closesocket( sockConn );
}

}

//客户端
#include<Winsock2.h>
#include<stdio.h>

void main()
{
//加载套接字库
WORD wVersionRequested;
WSADATA wsaData;
int err;

wVersionRequested = MAKEWORD ( 1, 1);

err = WSAStartup ( wVersionRequested, &wsaData );
if( err != 0)
{
return;
}

if( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1)
{
WSACleanup();
return;
}

//创建套接字
SOCKET sockClient = socket( AF_INET, SOCK_STREAM, 0 );

SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = inet_addr( "127.0.0.1" );
addrSrv.sin_family =AF_INET;
addrSrv.sin_port = htons( 6000 );

//向服务器发出连接请求
connect( sockClient, (sockaddr *) &addrSrv, sizeof(sockaddr) );

//接收数据
char recvBuf[100];
recv( sockClient, recvBuf, 100, 0 );

printf( "%s\n", recvBuf );

//发送数据
send( sockClient, "This is lisi", strlen("This is lisi")+1, 0 );

//关闭套接字
closesocket( sockClient );

WSACleanup();
}
C语言,C++编程资料C语言全部知识点复习资料 C语言考试试题等资料合集 2级C全国计算机考试上机题库汇总.doc C Primer Plus 第五版.pdf C++ 网络编程.pdf C++全套学习视频.txt C++全套教程.txt c++复习题.doc C++学习资料路线图.txt c++安装程序.txt C++程序设计上机考试题库.doc C++编程资料 C语言全部知识点复习资料.doc C语言小程序学生成绩系统.cpp.rar c语言涂格子游戏源码.txt C语言的代码内存布局具体解释.docx C语言程序设计(专升本)试卷附答案.doc C语言编程资料 c语言考试题库及答案.txt C语言考试题库及答案2015.doc C语言运算符优先级一览表.docx Google+C+++编程规范.pdf Java,C++算法与数据结构.txt MySQL数据库开发测试.docx oracle dg.docx oracle数据库.txt Oracle数据库应用基础考试试题-A卷(1)(1).docx 数据库oracle_dba笔试面试题目汇总.txt 数据库第一章(1).pptx 数据库第一章选择题练习(1).docx 数据库第二章练习题.docx 数据库课程设计--总体要求+题库2020.doc 第2章 关系数据库设计理论(1).pptx 第2章 关系数据库设计理论.pptx 第3章 Access2010数据库.pptx 计算机二级C语言编程题库100题.pdf (专升本)15年C语言专升本100题.doc (专升本)2008年专升本考试C语言模拟试题.doc (专升本)C程序设计试题.doc (专升本)C语言历年考试题及答案1.doc (专升本)C语言历年考试题及答案2.doc (专升本)C语言历年试题及答案.doc (专升本)C语言考试试题.doc (专升本)C语

33,320

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧