相关文章推荐
阳光的警车  ·  javascript - js ...·  1 年前    · 
酷酷的水煮鱼  ·  C语言 ...·  1 年前    · 
俊秀的啄木鸟  ·  MySQL casting from ...·  1 年前    · 

.cpp文件需要先编译为.exe可执行文件,才能运行。

这里介绍如何使用命令行来执行cpp文件,因为在一些情况下我们不能直接使用VS软件来运行调试,比如main函数中有参数,这时必须使用命令行来执行。

1、Developer Command Prompt介绍

可以使用Visual Studio自带的的 Developer Command Prompt(开发者人员命令提示符)来写命令行,在安装VS时会自带 Developer Command Prompt,在windows系统中,点击“开始”菜单,在VS的文件中中就可以找到 Developer Command Prompt的快捷方式。

2、执行单个cpp文件

2.1 cpp文件内容

用vs2017新建一个项目,包含main函数的run.cpp内容如下:

#include <iostream>
#include <string>
int main(int argc,char *argv[])
	int a = 123;
	std::string b = "hello command";
	std::cout << "自定义变量:" << std::endl;
	std::cout << "a=" << a<< std::endl;
	std::cout << "b=" << b << std::endl;
	std::cout << "main函数参数:" << std::endl;
	std::cout << "argv[0]=" << argv[0] << std::endl;
	std::cout << "argv[1]=" << argv[1] << std::endl;
	std::cout << "argv[2]=" << argv[2] << std::endl;
	system("pause");
	return 0;

不使用vs运行代码,可以看到解决方案文件夹下只有四个文件(使用vs运行代码后还会产生两个文件夹):

2.2 编译cpp文件

打开Developer Command Prompt,并切换路径至run.cpp所在的文件夹:

在这里插入图片描述
(1)编译文件命令为:

cl run.cpp

cl是微软的C/C++优化编译器,执行命令后可以看到run.cpp被编译为了run.exe可执行文件,并产生了一个run.obj文件:

在这里插入图片描述
(2)使用 /EHsc 选项

可以看到,直接使用 cl run.cpp 命令进行编译,会提示“使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc”。

意思就是 /EHsc 不抛出C++异常,建议使用 /EHsc 选项。那么运行命令就是:

cl /EHsc run.cpp

是否使用 /EHsc 选项获得的编译结果是相同的,但我们应该优先使用/EHsc 选项进行编译。

2.3 执行exe文件

(1)run.exe是可以直接双击运行的,结果如下:
在这里插入图片描述
因为直接双击运行没有办法给main函数传参数,所以参数argv[1]和argv[2]无法打印。

注意:argv[0]保存的是程序名,用户输入的main函数参数从argv[1]开始。

(2)用命令执行run.exe

直接输入命令 run.exe 就可以执行exe文件,因为没有传入main函数参数,所以结果和上面是一样的:

在这里插入图片描述
(3)用命令执行带main函数参数的run.exe

给main函数传入两个参数,运行命令为:

run.exe para1 para2

现在就可以正常打印出所有参数了:
在这里插入图片描述

最近呐,需要在Windows上对Unreal和AirSim进行开发,感觉少了Linux上的“Open terminal here”有点不舒服,于是Google了一下加了个右键菜单,主要参考这里的教程。 就是改注册表,Win键 + R 呼出运行窗口,regedit进入注册表编辑器(常规操作)。然后备份注册表,也就是File->Export。然后找到如下图所示的位置,添加一个新的Key,名为Developer cmd 2019 Developer cmd 2019的内容包括一个(Defaul
可以使用Visual Studio中的编译器和链接器将.cpp文件编译成.exe文件。首先,点击“视图”菜单项,然后选择“解决方案探索器”,右键单击项目,然后选择“生成”,最后点击“生成解决方案”即可完成编译
1. 背景   之前写了一篇博客VS:在windows上调用cl.exe编译运行C/C++程序,在文中可通过配置环境实现在cmd上运行C++程序。个人感觉配置略显麻烦,最近找到一种无须配置,可直接调用cl.exe编译运行C/C++程序的方法。 2. 用于测试的C++程序 #include <iostream> using namespace std; int main()
x64表示64位,x86表示32位,这个一般都没问题,问题在于x64兼容与x64本机有什么区别,于是Sin_Geek用中文搜索了半天木有找到可以解释疑惑的答案,而用英文一搜便发现有人与SIn_Geek有同样的疑惑,看到解答与所猜想的是一致的,便放心了~~ x64兼容(x64 cross)可以在32位系统上编译出在64位系统上运行的程序,而x64本机是指在64位系统上编译出在64位系统上运行的程序。
The IL Disassembler is a companion tool to the IL Assembler (Ilasm.exe). Ildasm.exe takes a portable executable (PE) file that contains intermediate language (IL) code and creates a text file suitable as input to Ilasm.exe. This tool is automatically installed with Visual Studio. To run the tool, use the Developer Command Prompt for Visual Studio (or the Visual Studio Command Prompt in Windows 7). For more information, see Command Prompts.
 简单了解Visual StudioDeveloper Command Prompt VS2008的命令为:Visual Studio 2008 Command Prompt        其详细信息如下:
前言:最近的机房合作到了编码的阶段,在这个阶段需要统一下VS的版本,于是下载了一个17版的VS,但是在引用的时候却报错了,下面是解决方案,来和大家分享一下。 (一)遇到的问题 1.错误一: 2.错误二: vs2017添加引用出错:对COM组件的调用返回了错误HRESULT E_FAIL (二)解决方案 1.以管理员身份打开 Developer Command Prompt for VS 2017...
文件对话框宏(6KB)<END><br>15,15.zip Code Template add-in for Visual C++ 5.0 在VC5中可增加的代码模板(5KB)<END><br>16,16.zip Comment / Uncomment macros 命令/反...
git clone https://github.com/iwatake2222/pico-work.git cd pico-work git submodule update --init cd pico-sdk && git submodule update --init && cd .. mkdir build && cd build # For Windows Visual Studio 2019 (Developer Command Prompt for VS 2019) cmake .. -G "NMake Makefiles" nmake # For Windows MSYS2 (Run the following commands on MSYS2) cmake .. -G "MSYS Makefiles"
weixin_44766596: 为啥在numpy转ms的tensor的时候报错 AttributeError: 'mindspore._c_expression.typing.TensorType' object has no attribute 'Tensor' 小样本(少样本)目标检测概述(few-shot object detection) |晓风|: 一直有个问题,就是比如用YOLOv5算法的s模型在COCO128(标注较少)上微调一会,精度达到90几,或者用其他数据集也一样,远超很多SOTA方法,这可以看作是小样本目标检测吗? 图像分类:AlexNet网络、五分类 flower 数据集、pytorch ctrl A_ctrl C_ctrl V: 因为直接运行这个文件没有任何输出结果呀,是用其他函数来调用这个文件的