不得不说,客户端的connect函数和服务端的accept函数是一对好基友,如果客户端没有去connect, 那么服务端的accept会一直在那里傻傻地痴痴地等待,我们先来看看connect函数的原型吧:

WINSOCK_API_LINKAGE
int
WSAAPI
connect(
SOCKET s,
const struct sockaddr FAR * name,
int namelen
);

第一个参数是客户端的套接字(表明即将发起连接请求),第二个参数是服务端的套接字所在的“地方”(“地方”是我自定义的专有名词),第三个参数是该“地方”的大小。

如果请求连接成功,则返回0,否则返回错误码。

下面我们看看服务端如何去发起连接请求:

    SOCKET sockClient = socket(AF_INET, SOCK_STREAM, );

    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();
connect(sockClient, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));

当然啦,应该注意处理函数的返回值,上次就被师傅说了一次。

知识点:

  • closesocket函数的作用和socket函数的作用相反,释放为套接字分配的资源。
  • WSACleanup函数和WSAStartup函数的作用相反,终止对套接字库的使用。
  • int main(int argc, char *argv[] ):argc是命令行参数总个数,argv[0] 是程序名,argv[1] 是参数1, argv[i] 是参数i.

原文链接:http://blog.csdn.net/stpeace/article/category/1300762

最新文章

  1. Android---闪频页和倒计时
  2. jsp日期插件My97DatePicker
  3. C语言-04-函数
  4. Linux系统文件权限&目录权限
  5. java.lang.IllegalStateException: Cannot call sendError() after the response has been committed
  6. 1030: [JSOI2007]文本生成器 - BZOJ
  7. 5.oracle建表的时候同时创建主键,外键,注释,约束,索引
  8. 团队作业4——第一次项目冲刺(Alpha版本)4.26
  9. vim编辑器介绍及其常用命令
  10. 2个域名重定向到https域名
  11. (NO.00004)iOS实现打砖块游戏(六):反弹棒类
  12. Struts框架原理及应用
  13. osx免驱网卡推荐
  14. html总结:表格中的文字居中
  15. 流畅的python--2 序列构成的数组
  16. [No0000F3]C# 结构(Struct)
  17. 中小团队快速实现持续交付iOS版
  18. shell篇(一)
  19. flutter Row里面元素居中显示
  20. hdu 4463 第37届ACM/ICPC杭州赛区K题 最小生成树

热门文章

  1. Android Sqlite 实例入门
  2. 在Mac上配置Android adb命令
  3. 【原】兼容IOS6以及旧版本的旋转处理方法,心得总结
  4. Android Service使用拾遗[阿里工程师分享]
  5. iOS本地数据存储(转载)
  6. iOS支付宝集成时遇到的问题整理(2)
  7. windows 编程中的常见bug
  8. TOMCAT报错:HTTP Status 404 -
  9. 被废弃的 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit
  10. 计算机信息统计.vbs