我知道有一个内置的C ++编译器和ST3的运行插件。这使我的程序很好。运行代码时,它在其控制台中运行第一部分,但在第一个cin >>
处停止。当我直接从终端运行ST3中编译的文件时,代码运行正常。
#include <iostream>
using namespace std;
int main()
{
int begInv;
int sold;
int store1, store2, store3;
// Get the beginning inventory for all the stores.
cout << "One week ago, 3 new widget stores opened \n";
cout << "at the same time with the same beginning \n";
cout << "inventory. What was the beginning inventory?";
cin >> begInv;
// Set each store's inventory.
store1 = begInv;
store2 = begInv;
store3 = begInv;
// Get the number of widgets sold at store 1.
cout << "How many widgets has store 1 sold? ";
cin >> sold;
store1 -= sold; // Adjust store 1's inventory.
// Get the number of widgets sold at store 2.
cout << "How many widgets has store 2 sold? ";
cin >> sold;
store2 -= sold; // Adjust store 2's inventory.
// Get the number of widgets sold at store 3.
cout << "How many widgets has store 3 sold? ";
cin >> sold;
store3 -= sold; // Adjust store 3's inventory.
// Display each store's current inventory.
cout << "\nThe current inventory of each store:\n";
cout << "Store 1:" << store1 << "\n";
cout << "Store 2:" << store2 << "\n";
cout << "Store 3:" << store3 << "\n";
return 0;
}
Screenshot of the result in ST3.
如果有人知道为什么它只是半途而废,并且可以帮助我搞清楚,那就太棒了。谢谢!
答案 0 :(得分:3)
我猜这个问题不是因为你用sublime编译,而是你试图从sublime中运行应用程序,因为它无法很好地处理交互式程序。
如果您从sublime编译应用程序并从控制台运行它,一切都应该正常工作。
您可以使用此answer中指定的技巧在外部cmd终端中运行该应用程序。
答案 1 :(得分:0)
在Mac中尝试:
{
"cmd": ["bash", "-c", "/usr/bin/g++ '${file}' -std=c++11 -o '${file_path}/${file_base_name}' && open -a Terminal.app '${file_path}/${file_base_name}'"]
}