TCP/IP Socket C 编程 step01 入门

作为一名iOS攻城师,大学期间入门学习的C语言。和大多数学习一样,俺们都是用着老谭的教材长大的,开发环境vc++6.0(不要意思暴露年龄了)。因此对于linux,socket编程一类的基本上是无从涉及,后续有跟风学习了java,再后来学习python,这样和C语言应该是渐行渐远。应该是某种内心的逃避吧,年轻人嘛总是喜欢新事物,总是爱走捷径。

如果您甘心做个高级语言工程师,那也就算了,基本上用好OC和python在当今时代找份好的工作是没有问题了。然而一旦你想做些小而精的应用时,就会发现原来要学习的东西是很多了,有些坑是要不过去的。这次就是,近期在做网络相关的App,突然就发现成堆的优质代码都是用C写的,因此不得不把C再找回来。


书归正传,socket编程是制作网络工具的基础。幸好有本叫做 TCP/IP Socket C 编程书籍作为入门教材,本打算先敲一个hello word体验一下,发现有很多编程细节书中并没有涉及,下面我将自己排除过后的坑,给大家介绍一下,方便初学者入门。虽然学习这门技术的人应该不会很多。

一、准备工作

1、环境 ubuntu

2、开发语言 C

3、目标:

(1)简单TCP服务器,实现自动应答客户端请求

(2)简单TCP客户端,实现向服务端发送请求


二、程序代码

代码下载地址:http://cs.ecs.baylor.edu/~donahoo/practical/CSockets2/textcode.html

不过无论是按照教材和下载源码,通常都很难编译成功,因为书里面并没有告诉你如何编译这些源码。下面是我整理的代码

http://pan.baidu.com/s/1o8Fq6N4

三、编译程序

1、gcc tcpechoclient4.c -o  tcpclient4

2. gcc tcpechoserver4.c -o  tcpserver4

四、运行

(1)在一个命令行里面运行server

./tcpserver4 5000

(2)在另外一个里面运行client

./tcpclient4 127.0.0.1 "echo this" 5000

(3)运行效果

下面是命令行的输出结果,client 通过41136 端口联系服务器 5000

./tcpserver4 5000Handling client 127.0.0.1/41136

在客户端显示 下面信息,证明demo成功

Received: echo this

你可能感兴趣的:(TCP/IP Socket C 编程 step01 入门)