在命令提示符下运行C++ - Windows
Run C++ in command prompt - Windows
我知道现在每个人都使用 IDE,但我只是发现用记事本++编写代码,使用命令提示符命令编译它,然后从那里运行它更简单。至少这适用于Java和Python。我试图弄清楚如何用C++做到这一点,但一直找不到任何好东西。是否有任何编译器(如Java的JDK(可以坚持我的路径并使用C++等效的javac
和java
从CMD运行和编译我的代码?
注意:请不要发布有关 IDE 如何更好的答案和评论 - 我知道它们是。我只是习惯于用旧的方式:D<</p>
执行任务的步骤:
首先,下载并安装编译器。
然后,键入 C/C++ 程序并保存它。
然后,打开命令行并将目录更改为存储源文件的特定目录,使用如下所示
cd
:cd C:Documents and Settings...
然后,要编译,请在命令提示符下键入:
gcc sourcefile_name.c -o outputfile.exe
最后,若要运行代码,请键入:
outputfile.exe
如果您运行的是Windows,请使用以下内容:
g++ -o program program.cpp
g++
是编译器的名称,-o
是创建.o
文件所需的选项。程序(不带.cpp
后缀(是exe
文件,program.cpp
是要编译的源文件。
g++ -o program program.cpp&program.exe
使用此快捷方式运行程序的.exe
文件。这可能在 Linux 中运行,但您可能必须使用.out
后缀而不是 .exe
。使用这个方便的批处理脚本在 Windows 上执行程序:
@echo off&&cls
set /p pathName=Enter The Path where the file is located:%=%
cd %pathName%
REM set /p exec=Enter The Name of the executable you want to make:%=%
set /p file=Enter The Name of the file you want to compile:%=%
g++ -o %file% %file%.cpp
%file%.exe
另存为cppExecutor.bat
您也可以在Unix(Linux和Mac(操作系统上使用以下命令:
CC program.cc
如果要使用gcc
:
gcc -o program program.cpp
使用快捷方式:
gcc -o program program.cpp&program.exe
这取决于您使用的编译器。
例如,如果您使用的是 Visual C++ .NET 2010 Express,请从开始菜单运行 Visual C++ 2010 Express 命令提示符,您只需编译并运行代码即可。
> cl /EHsc mycode.cpp
> mycode.exe
或者从常规命令行,您可以先运行vcvars32.bat
来设置环境。或者搜索setvcvars.cmd
(FLOSS项目的一部分(,并使用它来找到已安装的VS并让它为您调用vcvars32.bat
。
请查看编译器手册中的命令行。
当然,这是大多数编译器的开始方式。GCC 可能是最受欢迎的(带有大多数口味的 *nix(。语法只是gcc my_source_code.cpp
,或者gcc -o my_executable.exe my_source_code.cpp
。当然,当你有多个源文件时,它会变得更加复杂(就像在实现中一样;只要GCC可以找到它,d #include
任何东西都会自动工作(。
MinGW似乎是Windows版GCC的一个版本,如果你正在使用的话。不过我还没有尝试过。
可以肯定的是,大多数IDE还包含一个命令行界面。我知道Visual Studio有,尽管我从未使用过它。
我真的不明白你的问题是什么,这个问题相当不具体。给定记事本++,我假设你使用Windows。
你在这里有很多选择,从MinGW(使用GCC工具链和GNU make
(到使用现代MSVC。您可以使用WDK(ddkbuild.bat/.cmd
或普通build.exe
(,Windows SDK(nmake.exe
(,其他工具,如预制和CMake,或MSVC和Windows SDK附带的msbuild
。
我的意思是编译器名称会有所不同,cl.exe
MSVC和WDK和Windows SDK的名称,gcc.exe
MinGW的名称,但即使从控制台中,也习惯上以某种方式组织您的项目。毕竟,这就是make
和朋友被发明的目的。
因此,要了解特定编译器的命令行开关,请参阅该编译器的手册。要找到自动化构建的方法(即运行简单命令而不是复杂命令行的能力(,您可以筛选维基百科上的列表或选择我上面提到的工具之一并使用它。
旁注:没有必要要求人们不要提及 IDE。大多数专业开发人员已经自动化了他们的构建,以便从命令行运行,而不是从IDE内部运行(例如在开发周期中(,因为这种方法有很多优点。
- 下载MinGW表格:https://sourceforge.net/projects/mingw-w64/
- 使用记事本++编写C++源代码。 使用
- 命令行更改保存源代码的目录/文件夹(使用记事本++(
- 编译:G++ file_name.cpp -o file_name.exe
- 运行可执行文件:file_name.exe
- 第一个命令是:
g++ -o program file_name.cpp
- 第二个命令是:
.program.exe
让我们检查一下这张图片
MinGW的一个更好的替代方案是bash的powershell。您可以使用此处给出的步骤为 Windows 10 安装 bash
在你安装了bash之后,你需要做的仅仅是在你的终端上运行bash命令。
PS F:cpp> bash
user@HP:/mnt/f/cpp$ g++ program.cpp -o program
user@HP:/mnt/f/cpp$ ./program
打开cmd并进入保存文件的目录。然后对于编译,g++ 文件名。.cpp或gcc 文件名。.cpp
对于运行,文件名。.exe
这是用于编译和运行程序。
确保 gcc 编译器安装在 PC 或笔记本电脑中。并且还必须设置路径变量。
在MAC上使用的。
使用您首选的编译器。
使用 gcc 编译。
gcc -lstdc++ filename.cpp -o outputName
或者用叮当声编译。
clang++ filename.cpp -o outputName
编译完成后。你可以运行它。
./outputFile
MinGW 编译器 bin 目录添加到路径中。
使用mingw32-g++ -s -c source_file_name.cpp -o output_file_name.o
进行编译
然后mingw32-g++ -o executable_file_name.exe output_file_name.o
构建 exe
最后,您使用executable_file_name.exe
运行
[工作 100%] 来自 Windows 用户。打开创建file.cpp
的终端(电源外壳(。
-
g++ file.cpp
//it 会将文件编译成.exe -
.a.exe
//这将运行该程序。
有几种方法:
使用 GNU 编译器集合 (GCC(:
gcc -lstdc++ filename.cpp -o outputName
使用 g++ 命令:
g++ -o outputName filename.cpp
使用 clang++:
clang++ filename.cpp -o outputName
您只需键入即可运行代码
编译G++ file_name.cpp
要运行:一个
只有这一点,你必须做的是在记事本++编写的cmd中运行C ++代码
在此处输入图像描述
在此处输入图像描述
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- 在Linux for Windows上编译C++代码时出错
- 在Windows上用C++裁剪HBITMAP
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到
- 如何加载(或映射)文件部分的最大大小,但适合在Windows上的RAM
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 当我编译webrtc服务器时,Windows上只支持clang-cl
- 为什么在Windows上的VS 2019和Clang 9中"size_t"在没有标题的情况下工作
- Windows/Cygwin - 不能使用 pybind11 - 犯错误
- Windows 10-使用gtkmm-3.0库和g++[包括再现]的分段故障
- 在Windows中以.exe的形式运行c++
- 为什么包含windows.h会产生语法错误,从而阻止类的实例化?(C2146,C2065)
- 无法在windows控制台中为C++程序提供必要的输入
- 在Windows中查找扬声器输出的当前音量级别
- Windows.h与GLFW.h的接口
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- 在Linux和C++中的Windows上,散列字符串值会产生不同的输出
- Active Directory:从网络服务帐户下运行的Windows服务调用ADsOpenObject时失败
- c++17文件系统::recursive_directory迭代器()在mac上没有给出这样的目录,但在windows上
- 无法使用Qt Creator在Windows中构建yaml-cpp