永发信息网

问段GCC的命令,请逐字的解释一下g++ -std=c++11 -o2 -o a.out orienteering.cpp./a.out < example1.txt

答案:2  悬赏:0  手机版
解决时间 2021-11-14 22:55
  • 提问者网友:蓝琪梦莎
  • 2021-11-14 00:07
问段GCC的命令,请逐字的解释一下g++ -std=c++11 -o2 -o a.out orienteering.cpp./a.out < example1.txt
最佳答案
  • 五星知识达人网友:千夜
  • 2021-11-14 00:54
写错了,-O2才对。
第一行:
g++ -std=c++11 -o2 -o a.out orienteering.cpp
gcc有很多优化参数,-Ox一类(-O -O1 -O2 -O3 -Ofast -Os……)是优化参数,这些参数简单集了很多参数,都不要管它,-O2是在速度与程序体积上取得平衡的优化。
-o 文件名 输出的最终程序,如果不指示,默认也是a
-std=c++11就是用按C++2011标准来编译的,早期一些的是用C++1998编译的。现在好像都是开着用2011年标准编译的了。

orienteering.cpp就是那个源程序。
到了下一行
./a.out < example1.txt
./就是当前目录。“左边” < “右边”就是把右边文件的内容重定向左边程序的标准输入(C++里就是std::cin)。这个在Windows里面也有的呀
如果你在看一个文件,你可能会说明明是在一行的,怎么我说是两行?因为你看的这个文件是Linux格式的文件,在Linux里用换行表示下一行,但在在Windows里面是换行+回车。所以在Windows的编辑器里面看到的不认为有两行。
全部回答
  • 1楼网友:独钓一江月
  • 2021-11-14 01:55
-std=c++11

表示采用的语言标准是 c++11 这是最新的标准 以前有 c++98标准等。

-o2 表示使用 第二等级的优化 g++在处理过程中会对代码进行相关优化操作。

-o 表示形成的输出文件名 a.out 就是输出的文件名,也就是形成的最后可执行程序
orienteering.cpp 就是要编译的源代码文件了。

./a.out < example1.txt 表示执行这个生成的程序,并将 example1.txt中的东西作为输入源进行输入
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯