预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

C语言socket编程使用方法 C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。以下是小编为大家搜索整理的C语言socket编程使用方法,欢迎阅读!更多精彩内容请及时关注我们应届毕业生考试网! 第一部分服务器端 一、创建服务器套接字(create)。 二、服务器套接字进行信息绑定(bind),并开始监听连接(listen)。 三、接受来自用户端的连接请求(accept)。 四、开始数据传输(send/receive)。 五、关闭套接字(closesocket)。 socket接收、发送代码 1SOCKETsockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len); 2charsendBuf[50]; 3sprintf(sendBuf,"Welcome%stohere!",inet_ntoa(addrClient.sin_addr)); 4send(sockConn,sendBuf,strlen(sendBuf)+1,0); 5charrecvBuf[50]; 6recv(sockConn,recvBuf,50,0); 7printf("%s\n",recvBuf); 8closesocket(sockConn); 第二部分用户端 一、创建用户套接字(create)。 二、与远程服务器进行连接(connect),如被接受则创建接收进程。 三、开始数据传输(send/receive)。 四、关闭套接字(closesocket)。 客户端代码 1SOCKETsockClient=socket(AF_INET,SOCK_STREAM,0); 2 3SOCKADDR_INaddrSrv; 4addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1"); 5addrSrv.sin_family=AF_INET; 6addrSrv.sin_port=htons(6000); 7connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR)); 8send(sockClient,"hello",strlen("hello")+1,0); 9charrecvBuf[50]; 10recv(sockClient,recvBuf,50,0); 11printf("%s\n",recvBuf); 服务器端代码和客户端主要代码基本上都是上面的程序, 在应用的过程中有几点要根据自己的需求更改, 1、127.0.0.1是服务器端的IP地址,根据自己的IP段进行修改; 2、htons(6000)是端口号根据具体设定进行修改,我们PLC端口号用到是9600,这点我们需要修改成9600。 网上好多程序都是VC6写的,在参考过程中叶遇到了问题,程序LICK出现了如下错误 unresolvedexternalsymbol__imp__closesocket@4 解决办法: 这是由于VC库中没有加如ws2_32.lib所致。 解决方案一:程序代码中加入#pragmacomment(lib,"Ws2_32.lib") 解决方案二:在project\setting\link中object/librarymodules加入ws2_32.lib 这个是VC6的解决方案,我用的VS2008找了一下 上个图吧,VS2008里设置,工程属性-链接器-命令行-附加选项添加ws2_32.lib就ok了。 编译通过后,服务器端,可以看到hello, 客户端,可以看到welcome127.0.0.1tohere!