簡體   English   中英

如何在Eclipse CDT中獲取C / C ++程序的控制台輸入

[英]How to take console input for C/C++ program in Eclipse CDT

我在Windows7上通過cygwin使用gcc4和gdb來刪除June CDT。 我似乎無法從控制台獲取輸入。 我四處搜索它可能與eclipse的EOF有關,可以通過取消選中Run / Debug配置中的“將進程輸入和輸出連接到終端”來解決。 但我似乎無法取消它。

任何人都可以提出解決此問題的最佳方法。

#include <stdio.h>
#include <stdlib.h>

void menu();
int main(void) {


    menu();
    return 0;
}


void menu()
{
    int i=0;
     printf(" \n1. Push to Queue");
         printf(" \n2. Pop from Queue");
         printf(" \n3. Display Data of Queue");
         printf(" \n4. Exit\n");
         while(1)
         {
              printf(" \nChoose Option: ");
              scanf("%d",&i);
              switch(i)
              {
                    case 1:
                    {
                         int value;
                         printf("\nEnter a valueber to push into Queue: ");
                         scanf("%d",&value);
                        // push(value);
                        // display();
                         break;
                    }
                    case 2:
                    {
                        // delQueue();
                        // display();
                         break;
                    }
                    case 3:
                    {
                        // display();
                         break;
                    }
                    case 4:
                    {
                         exit(0);
                    }
                    default:
                    {
                         printf("\nwrong choice for operation");
                    }
              }
         }

}

找到一對相關的SO相關問題:

長話短說,他們說cygwin與其他操作系統相比,作為緩沖區被“不同”地對待,因此控制台不像它(可能)那樣“互動”。 某些解決方案建議顯式刷新緩沖區,而其他解決方案則提供配置選項。

您需要為Eclipse配置命令行參數:在“運行配置”>“參數”下

在這里閱讀

還可以考慮使用Ant作為構建腳本。 從長遠來看,效果更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM