【问题标题】:TCP/IP Programming in CC 语言中的 TCP/IP 编程
【发布时间】:2013-07-23 01:25:32
【问题描述】:

我明天有一个关于 TCP/IP 编程的考试。以下是本文之前的问题之一。

Write and run a client and a server program. Using C language in UNIX, with the
following specifications :

• A TCP client program will send a range of number (e.g. 1 to 10) to the server.
• TCP server accept the number range from client and send back the sum of the
number range. Client will print the result.

我不知道如何设置编译器和其他设置来运行这个 tcp ip 程序。当我在网上搜索时,我得到了两个不同的程序,一个用于客户端,另一个用于服务器。有些人请告诉我如何运行这些程序以获得所需的输出。我应该在我的系统上安装什么样的编译器。(我使用的是 Windows 7)??

【问题讨论】:

  • 在 Windows 7 上,您需要使用 Cygwin 或 Mingw 来运行类似 Unix 的环境来执行此操作。
  • 你为什么不首先尝试学习?

标签: c compiler-construction tcp tcpclient tcp-ip


【解决方案1】:

由于作业要求您的代码在 Unix 系统上工作,您首先需要安装一个。按照这些简单的步骤在现有 Windows 安装之上安装虚拟 Unix 环境。

  1. 下载并安装VirtualBox for Windows
  2. 下载并解压this Ubuntu 12.10 disc image注意:需要7-Zip)。
  3. 启动 VirtualBox 并创建一个新的虚拟机(命名为 Ubuntu)。
  4. 在“虚拟硬盘”设置中,选择“使用现有硬盘”并选择刚刚下载的镜像文件(注意:文件名应以“.vdi”结尾)。李>
  5. 运行您的新虚拟机。您应该会看到 Ubuntu 启动画面。
  6. 使用用户名 ubuntu 和密码 reverse 登录(注意:区分大小写!)。
  7. 打开终端并输入 sudo apt-get install build-essential注意: 当终端提示您输入密码时,请使用 reverse )。
  8. 您应该(满怀希望地)拥有完成任务所需的一切。有关网络编程的更多信息,请咨询Beej's Guide to Network Programming -- Using Internet Sockets

【讨论】:

    【解决方案2】:

    您需要在系统上打开两个不同的终端。 在第一个终端编译并运行 server.c 程序。(确保您监听所有 ips 或您的主机 ip(至少)。 当它正在运行时。(它将等待来自您的客户端程序的请求) 在另一个终端运行客户端程序。

    希望这能解决问题!

    有关如何在 unix 中创建和运行文件的详细信息,请参阅http://www.wikihow.com/Compile-a-C-Program-Using-the-GNU-Compiler-%28GCC%29

    P.S:如果我没有错,你可以在 win7 中做同样的事情,只是在调用命令提示符的那个终端!

    如果可能,发布结果!

    【讨论】:

      【解决方案3】:

      下载一个叫做VMWare player的东西。并寻找可以使用 VMWare 播放器加载的 Ubuntu 映像。这样,您将拥有一个可以在 Windows 7 内部或与 Windows 7 一起运行的小型 Linux 虚拟机。您可以在 Ubuntu 或任何其他 Linux 虚拟机中使用编译器 GCC。并得到很多咖啡。 Blargle 是正确的,但我认为我的建议要好一些,因为您最终会拥有一个相当完整的 Unix 类型环境来进行开发。Blargle 的方式将 Unix 工具放在 Windows 之上,我觉得这有点笨拙。

      【讨论】:

        【解决方案4】:

        我从这个site 学习了套接字编程。他已经详细地给出了一切。下载一个 Vmware 工作站并加载 ubuntu 。了解他们非常直接的程序。

        【讨论】:

          【解决方案5】:

          也许您可以尝试查看网络上的网络套接字。您可以轻松找到很多可以回答您问题的好教程。

          你可以在你的系统上使用你想要的编译器,这取决于你现在使用的是什么。

          【讨论】:

          • 虽然我确定您想提供帮助,但此答案并不能真正清除所询问的任何信息。将 SO 用户发送到不同网站的答案通常不受欢迎,特别是如果您不包括对网站上可能找到的内容的解释。 SO 应该是知识的集合,而不是其他网站的门户。
          猜你喜欢
          • 2022-06-14
          • 1970-01-01
          • 1970-01-01
          • 2015-09-24
          • 1970-01-01
          • 2013-08-16
          • 1970-01-01
          • 2015-06-24
          • 2017-04-27
          相关资源
          最近更新 更多