x; cin.ignore(); cout>y; 如果(y==1){ for(int i=0;i命令提示符(您可以点击图标(左上)并选择属性,以设置字体(推荐Lucida Console 12)和高度/宽度),c++,cin,C++,Cin" /> x; cin.ignore(); cout>y; 如果(y==1){ for(int i=0;i命令提示符(您可以点击图标(左上)并选择属性,以设置字体(推荐Lucida Console 12)和高度/宽度),c++,cin,C++,Cin" />

cin关键字在文本编辑器中不工作 我使用ScTE文本编辑器(我不能使用任何IDE或编译器,因为我还需要使用MaCube文件,如果我使用某种文本编辑器,我的代码只能用于C++中的所有编码)。然而,我一直面临着同样的挑战;文本编辑器(我在多个编辑器上尝试过,包括代码板和升华文本)没有从键盘读取任何输入。以下是源代码: #include <iostream> #include <iomanip> using namespace std; const int SIZE_OF_ARRAY = 5; int main(){ int x, y; int counter = 0; int elements[SIZE_OF_ARRAY]; cout << "Please enter a number "; cin >> x; cin.ignore(); cout << "Please enter a choice "; cin >> y; if(y == 1){ for(int i = 0; i < SIZE_OF_ARRAY; i++) elements[i] = -1*SIZE_OF_ARRAY + x; for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } else if(y == 2){ for(int i = 0; i < SIZE_OF_ARRAY; i++){ if(i == 0) elements[i] = -1*x; else{ elements[i] = elements[i-1] + 1; } } for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } else if(y == 3){ for(int i = 0; i < SIZE_OF_ARRAY; i++){ counter++; elements[i] = 7*x*counter; } for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } } #包括 #包括 使用名称空间std; _数组的常数int SIZE_=5; int main(){ int x,y; int计数器=0; int元素[数组的大小]; cout>x; cin.ignore(); cout>y; 如果(y==1){ for(int i=0;i命令提示符(您可以点击图标(左上)并选择属性,以设置字体(推荐Lucida Console 12)和高度/宽度)

cin关键字在文本编辑器中不工作 我使用ScTE文本编辑器(我不能使用任何IDE或编译器,因为我还需要使用MaCube文件,如果我使用某种文本编辑器,我的代码只能用于C++中的所有编码)。然而,我一直面临着同样的挑战;文本编辑器(我在多个编辑器上尝试过,包括代码板和升华文本)没有从键盘读取任何输入。以下是源代码: #include <iostream> #include <iomanip> using namespace std; const int SIZE_OF_ARRAY = 5; int main(){ int x, y; int counter = 0; int elements[SIZE_OF_ARRAY]; cout << "Please enter a number "; cin >> x; cin.ignore(); cout << "Please enter a choice "; cin >> y; if(y == 1){ for(int i = 0; i < SIZE_OF_ARRAY; i++) elements[i] = -1*SIZE_OF_ARRAY + x; for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } else if(y == 2){ for(int i = 0; i < SIZE_OF_ARRAY; i++){ if(i == 0) elements[i] = -1*x; else{ elements[i] = elements[i-1] + 1; } } for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } else if(y == 3){ for(int i = 0; i < SIZE_OF_ARRAY; i++){ counter++; elements[i] = 7*x*counter; } for(int j = 0; j < SIZE_OF_ARRAY; j++) cout << elements[j] << " "; } } #包括 #包括 使用名称空间std; _数组的常数int SIZE_=5; int main(){ int x,y; int计数器=0; int元素[数组的大小]; cout>x; cin.ignore(); cout>y; 如果(y==1){ for(int i=0;i命令提示符(您可以点击图标(左上)并选择属性,以设置字体(推荐Lucida Console 12)和高度/宽度),c++,cin,C++,Cin,Hoosain,继续上面的评论,当您使用IDE时,您必须配置编译器的路径以及您希望使用的所有编译器选项,以及生成的可执行文件和对象文件的位置,等等。当您在windows上使用代码块时,基本上幸运的是,代码块将自动检测MinGW已安装并设置了其编译器配置,允许您构建和运行代码,而无需配置编译器详细信息。是另一个能够很好地自动检测和使用MinGW的编辑器 对于其余的IDE,您可以将它们配置为查找并使用您已安装的编译器(MinGW),以及配置所有所需的编译器选项(至少使用-Wall-Wextra启用编

Hoosain,继续上面的评论,当您使用IDE时,您必须配置编译器的路径以及您希望使用的所有编译器选项,以及生成的可执行文件和对象文件的位置,等等。当您在windows上使用代码块时,基本上幸运的是,代码块将自动检测MinGW已安装并设置了其编译器配置,允许您构建和运行代码,而无需配置编译器详细信息。是另一个能够很好地自动检测和使用MinGW的编辑器

对于其余的IDE,您可以将它们配置为查找并使用您已安装的编译器(MinGW),以及配置所有所需的编译器选项(至少使用
-Wall-Wextra
启用编译器警告)

这就是那些只使用为他们配置的IDE的新程序员遇到问题的地方…在你能告诉IDE你的编译器在哪里以及你想使用的编译器选项之前,你必须知道你的编译器在哪里,并且理解你应该使用的编译器选项的最小集合

学习使用编译器的方法是使用旧的命令行(是的,在windows上是
cmd.exe
,在早期版本中通常被标记为“DOS提示符”),IDE只是编译器的前端,它执行与您在命令行上输入的命令相同的命令来编译程序

学习如何使用编译器将在学习编写代码时为您节省大量的时间。您只需打开命令提示符并编译您想要的任何文件,而无需设置项目等。在学习编写代码时,尝试将小示例塞进IDE会耗费大量的时间,而且往往会带来更多的麻烦。Rath与其担心如何使用IDE,不如先关注“如何使用编译器”

由于您已在windows上安装了MinGW,因此要从命令提示符下进行编译,只需将MinGW
bin
目录的路径添加到您的用户环境中即可。您可以通过将
path
作为环境变量添加到此处:

Start Menu-> (rt-click on Computer)-> Properties-> 
Advanced System Settings-> (Advanced tab)-> Environment Variables
顶部窗口(用户变量)中,单击添加(或编辑)路径“变量名”。通常,如果在默认位置安装了MinGW,只需将路径添加为“变量值”:

(验证计算机上的路径)

注意:windows用分号分隔路径组件,因此如果已经有
path
变量集,只需在变量集和添加的变量之间添加分号即可。此外,如果已经打开命令提示符,则必须将其关闭并再次打开,新路径才能生效)只需打开
开始菜单->附件->命令提示符
(您可以点击图标(左上)并选择
属性
,以设置字体(推荐Lucida Console 12)和高度/宽度)

现在,您已经将命令提示符配置为允许您在文件系统中的任何位置编译任何文件。例如,我使用您发布的代码进行了测试(我对其进行了修改以添加信息提示)。编译它是小菜一碟。我将可执行文件保存在
bin
目录中,以将源代码和二进制文件分开

我将您的文件命名为
array\u get.cpp

编译

然后只需输入正常的
g++
编译器命令,并至少使用
-Wall-Wextra
选项来启用编译器警告(你可以添加
-pedantic
和任何你想要的额外警告,我建议至少添加
-Wshadow
,这样你的编译器就会对你在多个作用域中声明的任何可能冲突的变量发出警告。
-o
选项允许你指定可执行文件的位置(我只使用一个单独的
bin
目录,如上所述)。因此,要编译代码并将其链接到
bin\array\u get.exe
中,我只需输入以下内容:

C:\Users\david\Documents>g++ -Wall -Wextra -o bin\array_get array_get.cpp
(在代码编译时没有警告之前不要接受它——阅读任何警告(它给出了一行问题),理解它告诉您的内容,然后去修复它)

示例使用/输出

C:\Users\david\Documents>bin\array_get.exe
Please enter a number: 21
Please enter a choice (1-3): 3
147 294 441 588 735
就是这样。因为MinGW使用的是
gcc
,所以在windows上使用的编译器命令与在Linux上使用的完全相同,所以学习从命令行编译有双重好处

现在,您可以使用任何文本编辑器编辑代码,同时可以使用命令提示符简单轻松地重新编译代码,直到代码正确为止。没有项目对话框,每个文件都没有不同的文件夹,只需要从命令行自由编译任何文件即可。(实际上,我在目录中按类型将我的源代码分开,例如c、cpp),您可以找到最适合您的源代码。我还使用一个简单的
bat
文件,该文件将exename和source.cpp名称作为参数,然后使用我设置的选项进行编译—它只需减少键入
:)

此外,由于您现在知道编译器所在的位置以及要使用的选项,因此可以在任何IDE上打开“设置”窗口,并设置相应的编译器命令和编译器操作
C:\Users\david\Documents>bin\array_get.exe
Please enter a number: 21
Please enter a choice (1-3): 3
147 294 441 588 735