【问题标题】:how to open new console window using Ansi C?如何使用 Ansi C 打开新的控制台窗口?
【发布时间】:2011-04-07 21:02:40
【问题描述】:

我是 Anci c 编程的初学者,这里是我的程序的描述 我的程序首先要求用户按任意键,然后打开一个新控制台,用户输入他想要的任何数字,然后关闭控制台,他输入的数字打印在父控制台中,我希望这清楚并感谢回复

所以我想要打开新控制台的功能 我在win 7下使用Code::Blocks gcc编译器

【问题讨论】:

  • ANSI C 没有多个控制台的概念(例如,像多个窗口)。请指定您的平台。
  • 感谢重播我正在使用 windows
  • 您需要编辑您的问题并删除所有对 ANSI C 的引用,因为“ANSI C”和“控制台”是互斥的。

标签: c winapi console


【解决方案1】:

“ANSI C”不知道有“控制台”或“窗口”之类的东西。这几乎肯定取决于所使用的操作系统和/或窗口环境,以及用于驱动此类操作的任何第三方库。也许像ncurses 这样的东西在这里会有所帮助,但如果没有更具体的信息,就无法知道。

【讨论】:

  • 抱歉我的问题不清楚,程序首先要求用户按任意键,然后打开一个新控制台,用户输入他想要的任何数字,然后关闭控制台,他输入的数字是打印在父控制台中,我希望这清楚并感谢您的回复
  • @mohammed sameeh - 您应该编辑您的问题以包含上述评论。
【解决方案2】:

ANSI C 没有“窗口”的概念。这是 C 语言范围之外的操作系统概念。

【讨论】:

    【解决方案3】:

    正如人们所提到的,这对 ANSI C 没有意义。对于 Windows,您需要更具体地说明您想要什么。

    如果您正在编写控制台应用程序(如果您使用main,或者如果您明确地将/SUBSYSTEM:CONSOLE 标志传递给链接器,则会自动完成),您不需要做任何特别的事情。从窗口应用程序运行您的应用程序将为您生成一个控制台窗口。从现有的控制台窗口运行它会重用那个。

    如果您正在编写一个窗口应用程序(如果您使用 WinMain 会自动完成,或者如果您明确地将 /SUBSYSTEM:WINDOWS 标志传递给链接器),您可以使用 AllocConsole。请参阅 MSDN 中的 Creation of a Console 文章。 (如果您正在编写控制台应用程序并且不想重用现有控制台,我认为您也应该能够做到这一点,但我不得不说这样做对用户非常不友好。)

    【讨论】:

      【解决方案4】:
      system("cmd");
      

      应该做的伎俩

      【讨论】:

      • 这假设是 Windows。系统(“xterm”);在 Linux 下是安全的选择。
      • 呃,在哪个宇宙中会“做这个把戏”?而且我不确定这算不算“ANSI C”。
      • 能告诉头文件吗
      猜你喜欢
      • 1970-01-01
      • 2013-06-30
      • 2010-12-26
      • 1970-01-01
      • 2013-06-01
      • 2019-05-06
      • 2010-10-02
      • 2013-03-18
      • 2012-06-22
      相关资源
      最近更新 更多