Beej’s Guide Network to Programming 系列连载01

本文档旨在帮助初学者理解Socket编程的基本概念及操作流程。适合具备C语言基础的学习者,内容覆盖了Linux平台下的Socket编程实践,并提供了针对Solaris/SunOS及Windows平台的编程提示。
摘要由CSDN通过智能技术生成

写在篇首:

--------------------------------------------------------------------------------------

此译文不是标准的一字一句的翻译!

而是作为一个程序员的角度去理解的产物!

有兴趣的朋友可以使用邮箱和我沟通!(非常欢迎你的交流)

我的邮箱: veic_2005#163.com(把#替换为@)

------------------------------------------------------------------完美的分割线--

版权声明:

Beej’s Guide Network to Programming
Using Internet Sockets 

Brian “Beej Jorgensen” Hall
beej@beej.us

Version 3.0.14
September 8, 2009

Copyright © 2009 Brian “Beej Jorgensen” Hall

1.简介

唉!Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?但是为你在调用 connect() 前的bind() 的结构而不知所措?等等…

好在我已经将这些事完成了,我将和所有人共享我的知识了。如果你了解 C 语言并想穿过网络编程的沼泽,那么你来对地方了。

并告诉你:我终于赶上了未来(在最后一刻)并更新了关于IPv6的指南!享受!

1.1 受众

这个文档是一个指南,而不是参考书。如果你刚开始 socket 编程并想找一本入门书,那么你是我的读者。但这不是一本完全的 socket 编程书。

1.2 平台和编译器

这篇文档中的大多数代码都在 Linux 平台PC 上用 GNU 的 gcc 成功编译过。

1.3 官方网站

http://beej.us/guide/bgnet/

1.4 Solaris/SunOS的程序员需要注意

当在Solaris或者SunOS编译时,你必须多一些参数。像下面这样:

$ cc -o server server.c -lnsl -lsocket -lresolv

1.5 Windows程序员注意

你必须增加下面的头文件(除非你安装了Cygwin)

#include <winsock.h>

而且,必须首先调用WSAStartup().像下面这样:

#include <winsock.h>

{

WSADATA wsaData; // if this doesn’t work

//WSData wsaData; // then try this instead

// MAKEWORD(1, 1) for Winsock 1.1,MAKEWORD(2, 0) for Winsock 2.0:

If (WSAStartup(MAKEWORD(1, 1),&wsaData) != 0) {

Fprintf(stderr, “WSAStartupfailed.\n”);

Exit(1);

}

}

最后,你必须调用WSACleanup().


End。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值