我是C ++网络编程的新手,但有Java套接字等经验。
我一直在尝试用C ++编写一个简单的TCP echo服务器,但实际上并没有取得任何进展。我已经尝试过查看http://cs.baylor.edu/~donahoo/practical/CSockets/practical/之类的代码但无法正常工作。
任何人都可以给我一些简单的 C ++代码来开始使用类似TCP echo服务器的东西吗?我真的不明白如何开始。
提前致谢。
答案 0 :(得分:3)
术语“简单”和“C ++ TCP Echo Server”不属于同一个句子。没有这样的事情。
您正在查看的样本可能与您将要获得的“简单”接近(如果您想深入了解细节)。使用一个处理所有繁重工作的库可以使事情变得更容易(但教育程度更低)。我可能会查看Boost.Asio(以及示例Blocking TCP Echo Server示例)。
如果事情没有意义,你应该回过头来看看你的C ++网络编程,直到事情开始点击为止。
答案 1 :(得分:1)
我建议您查看boost framework - 它提供了JDK为java程序员提供的相同类型的“必不可少的实用程序类”。
有许多教程可用于boost的各个方面。 Here's one on getting started with the asynchronous i/o components。
如果您想直接进入(非常简单的)服务器套接字示例here it is。
祝你好运。答案 2 :(得分:1)
要学习网络编程,我强烈建议您查看是否可以购买,乞讨,借阅或窃取(远离我的副本)Richard W Stevens book Unix网络编程3 em> (请注意,在第一版之后,后续版本将拆分为卷,因此请确保获得适当的TCP / IP卷。)
我发现它是学习TCP编程的详细资源,主要是在Unix / POSIX系统上。如果是内存服务器,它有一些代码用于TCP回送客户端和用C编写的服务器,它用于一些示例。你可以在这里找到这本书的源代码 - 在tcpcliserv
目录中挖掘Makefile和源代码:
http://www.kohala.com/start/unpv12e.html
编辑:我意识到它不是你要求的C ++版本,但如果我认为你的最终目标是学习网络编程,那么用C语言学习它应该是C ++的一个很好的基石....
乙