此处运行环境是在Windos下,运行cmd命令进入DOS界面

现在有一段简单C++代码(文件名为 demo.cpp),用于计算a*b的值

#include<iostream>
using namespace std;
int main(){
int a,b;
while(cin>>a>>b){
cout<<a<<"*"<<b<<"="<<a*b<<endl;
}
return 0;
}

demo.cpp文件的位置是在 C:\Users\Administrator\Desktop 目录下

第一步:在DOS界面进入这个目录

第二步:用g++ 加上文件名,注意要加上文件扩展名,这样会生成一个a.exe的可执行文件(Windows默认生成a.exe,Linux默认生成a.out)

因为这里是C++源代码,所以要用g++命令,如果是C语言的源代码,则既可使用g++,也可以使用gcc(或者cc)命令。

第三步:直接输入a.exe并回车, 即可执行由demo.cpp编译链接生成的程序(Linux环境下,则改成  ./a.out 运行程序)

第四步:此时,输入参数即a与b的值,敲击回车之后即可出结果

第五步:使用Ctrl+z终止程序

看了上面的过程,可能你会觉得不方便,

1->生成的可执行文件是a.exe而不是希望得到的demo.exe

2->每一次的每一条测试数据都得手动输入,太过于麻烦

针对问题一:

首先可以将上面的第二步中的g++ demo.cpp添加可选项-o

使用g++ -o demo.exe demo.cpp (或者 g++ -o demo demo.cpp)即可生成demo.exe可运行程序,

如果想命名为test.exe只需g++ -o test demo.cpp (或者 g++ -o test demo.cpp)即可

针对问题二:

运行程序仍可以用demo.exe命令,但是此时还得一条一条的输入测试数据

但为了方便,可以将测试数据事先保存在文本文件(假设为input.txt)里面,

运行的时候直接往里面读取数据即可,注意的是input.txt里面的数据格式要按照demo.exe规定的格式

然后将结果写入另外一个文本文件(假设为output.txt)中,直接查看

使用demo.exe <input.txt> output.txt即可完成以上操作

拓展:

如果你仔细看一下保存源代码的文件夹,你就会发现,当我们用IDE集成环境一键编译运行的时候,会出现 *.o文件,而此时用命令行编译运行没有生成 *.o文件,如果你想要 *.o 文件,那么你就需要在编译的时候添加一个 -c选项,这样就会只生成一个 *.o文件, *.o文件可以抽取出来,做成库文件

在Windows命令行中编译运行C/C++程序的更多相关文章

  1. 【转帖】windows命令行中java和javac、javap使用详解(java编译命令)

    windows命令行中java和javac.javap使用详解(java编译命令) 更新时间:2014年03月23日 11:53:15   作者:    我要评论 http://www.jb51.ne ...

  2. 在命令行中直接运行带main方法的java

    用了很久的java,基本都是交给服务器完成的执行,有page之类的入口,或者是在IDE工具中直接 Run As Java Application. 并且一直对安装java之后配置JAVA_HOME,p ...

  3. windows命令行中java和javac、javap使用详解(java编译命令)

    如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行.进入如图所示的画面: 可知,当前默认目录为C盘Users文件夹下的Administrator文件夹.一般而 ...

  4. Windows命令行中使用SSH连接Linux

    转自 http://www.linuxidc.com/Linux/2014-02/96625.htm 1.下载: openssh for Winodws: 免费下载地址在 http://linux.l ...

  5. Windows命令行中pip install jieba,但没有安装到anaconda3中

    系统混淆了python3环境下的pip和anaconda3环境下的pip. 找到Anaconda3的Scripts目录,我这里是C:\Users\Diane\Anaconda3\Scripts 将该目 ...

  6. appium windows 命令行中运行以及targetSdkVersionFromManifest failed的解决

    启动appium服务,可以通过appium.exe可执行文件启动,也可以通过命令行启动.appium.exe启动需要通过安装可执行文件,命令行启动需要通过npm安装appium.可执行文件启动方式如下 ...

  7. 【Java】【转】在命令行中编译和运行java

    原文:http://blog.csdn.net/u010900574/article/details/50792353 同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到Li ...

  8. 在linux命令行中编译和运行java文件

    同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到linux服务器上的时候,我们经常需要通过命令行编译和运行java文件,网上关于这个的方法大多是通过 javac -cp f ...

  9. Set JAVA_HOME in windows cmd(在windows 命令行中修改JAVA_HOME)

    set JAVA_HOME=jrepathset PATH=%JAVA_HOME%\bin;%PATH%注意这里没有引号.这样就不需要在我的电脑属性中修改java_home了,以及重启命令行了.对于程 ...

随机推荐

  1. IO流_演示键盘录入

    读取一个键盘录入的数据,打印到控制台上 键盘本身就是一个标准的输入设备,对于java而言,对于这种输入设备都有相应的对象在System类中 import java.io.IOException; im ...

  2. mysql索引优化-order/group

    为排序使用索引 KEY a_b_c (a,b,c) order by 能使用索引最左前缀 -order by a -order by a,b -order by a,b,c -order by a d ...

  3. linux(centos 7)下安装elasticsearch 5 的 IK 分词器

    (一)到IK 下载 对应的版本(直接下载release版本,避免mvn打包),下载后是一个zip压缩包 (二)将压缩包上传至elasticsearch 的安装目录下的plugins下,进行解压,运行如 ...

  4. call()、delegatecall()

    call()当使用方法是:require(msg.sender.call.value(_weiToWithdraw)());则作用是将_weiToWithdraw个以太币发送给msg.sender地址 ...

  5. day16 Python map函数

    num_l=[1,2,10,5,3,7] #lambda x:x+1 # def add_one(x): # return x+1 #lambda x:x+1 # def reduce_one(x): ...

  6. oracle 索引的几种方式

    一.查询索引的高度 select index_name,blevel,leaf_blocks,num_rows,distinct_keys,clustering_factorfrom user_ind ...

  7. 理解Vuex的辅助函数mapState, mapActions, mapMutations用法

    在讲解这些属性之前,假如我们项目的目录的结构如下: ### 目录结构如下: demo1 # 工程名 | |--- dist # 打包后生成的目录文件 | |--- node_modules # 所有的 ...

  8. PAT A1018 Public Bike Management (30 分)——最小路径,溯源,二标尺,DFS

    There is a public bike service in Hangzhou City which provides great convenience to the tourists fro ...

  9. Omi框架学习之旅 - 插件机制之omi-finger 及原理说明

    以前那篇我写的alloyfinger源码解读那篇帖子,就说过这是一个很好用的手势库,hammer能做的,他都能做到, 而且源码只有350来行代码,很容易看懂. 那么怎么把这么好的库作为omi库的一个插 ...

  10. Crowdsourcing[智能辅助标注]

    为了实现标注平台智能辅助标注的能力,即上传一个标注任务,开始不提供辅助任务,随着用户标注的进行,后台可以收集一部分的标记数据,然后开启模型训练,并接着提供模型服务功能.然后再收集数据,再不断的训练,然 ...