运行 Mac OSX 上 Sublime Text 3 中的 C++
Run C++ in Sublime Text 3 on Mac OSX
我知道有一个内置的 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.
如果有人知道为什么只 运行ning 一半,并且可以帮助我弄清楚,那就太好了。谢谢!
我猜想问题的出现不是因为你用 sublime 编译,而是你试图从 sublime 内部运行 应用程序,因为它不能很好地处理交互式程序。
如果您从 sublime 编译您的应用程序并从控制台 运行 它,一切都应该正常工作。
您可以使用此 answer 中指定的技巧在外部 cmd 终端中 运行 应用程序。
在 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}'"]
}
我知道有一个内置的 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.
如果有人知道为什么只 运行ning 一半,并且可以帮助我弄清楚,那就太好了。谢谢!
我猜想问题的出现不是因为你用 sublime 编译,而是你试图从 sublime 内部运行 应用程序,因为它不能很好地处理交互式程序。
如果您从 sublime 编译您的应用程序并从控制台 运行 它,一切都应该正常工作。
您可以使用此 answer 中指定的技巧在外部 cmd 终端中 运行 应用程序。
在 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}'"]
}