当前位置:首页 » 编程软件 » g编译o

g编译o

发布时间: 2023-05-01 13:21:57

① gcc. g++ 编译后生成的.O文件有何不同

从总体来看,没什么不同,都是
文件头、段表、段内容这样的一个格式。

往内容来看,两者有区别的,g++是把文件当C++,gcc是把文件当作C。首先是符号生成规则(name mangling)不一样,还有就是连接的库也不一样。

② gcc编译时把-o放在-g前面为什么会报错

这是因为-g是选项,后面不需要给参数,而-o是参数,后面需要加上输出文件名称,所以,gcc test.c -o -g test,会生成一个-g的输出文件,而后面的test就成非法参数了。

③ gcc怎么编译.o

gcc中-c和-o是编译时可选的参数
-加-c, (compile)只编译生成中间同名目标文件,不链接
-加-o,(output)指定输出文件名,该文件为可执行文件,不加-o会默认生成a.out
举例:
gcc -c hello.c 编译生成hello.o文件
gcc -o hello hello.c 生成可执行文件hello

④ g 如何编译出UTF-8编码的exe

把源文改为utf-8编码就可以了,g++默认的编译编码就是utf-8的,也可以使用-fexec-charset=charset,此选项指定窄字符或窄字符串的字面值常量的内部编码方式,默认为UTF-8。例如指定此选项为GBK,则窄字符或窄字符串常量将会以GBK编码方式存储而不是默认的UTF-8编码方式。

例如:

g++-fexec-charset=UTF-8main.cpp-omain.exe&&main.exe
#include<iostream>
usingnamespacestd;

intmain(intargc,charconst*argv[])
{
cout<<"你好。"<<endl;
return0;
}

⑤ gcc -g -o -c分别是什么意思

-c和-o都是gcc编译器的可选参数。

-c表示只编译(compile)源文件但不链接,会把.c或.cc的c源程序编译成目标文件,一般是.o文件。-o用于指定输出(out)文件名。不用-o的话,一般会在当前文件夹下生成默认的a.out文件作为可执行程序。

例如:

gcc -c test.c将生成test.o的目标文件

gcc -o app test.c将生成可执行程序app

gcc -c a.c -o a.o表示把源文件a.c编译成指定文件名a.o的中间目标文件(其实在这里,把-o a.o省掉,效果是一样的,因为中间文件默认与源文件同名,只是后缀变化)。

1、如果GCC不带-C参数,编译一个源代码文件(test.c)。那么会自动将编译和链接一步完成,并生成可执行文件。可执行文件可以有-o参数指定(test.o)

2、如果是多个文件,则需要先编译成中间目标文件(一般是.o文件),在链接成可执行文件,一般习惯目标文件都是以.o后缀,也没有硬性规定可执行文件不能用.o文件。

(5)g编译o扩展阅读:

gcc:GNU编译器套件(GNU Compiler Collection)包括C、C++、Objective-C、Fortran、Java、Ada和Go语言的前端,也包括了这些语言的库(如libstdc++、libgcj等等)。GCC的初衷是为GNU操作系统专门编写的一款编译器。GNU系统是彻底的自由软件。此处,“自由”的含义是它尊重用户的自由。

基本用法:

-o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。

-O,对程序进行优化编译、链接,采用这个选项,整个源代码会在编译、链接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、链接的速度就相应地要慢一些。

热点内容
sql写数据 发布:2025-07-10 15:01:29 浏览:160
php入门手册 发布:2025-07-10 14:42:24 浏览:791
手机如何设密码锁屏 发布:2025-07-10 14:17:06 浏览:803
java求绝对值 发布:2025-07-10 14:10:55 浏览:653
usb调试开关在哪里安卓 发布:2025-07-10 13:59:55 浏览:78
数据库维度 发布:2025-07-10 13:54:31 浏览:799
c语言位域的赋值 发布:2025-07-10 13:54:30 浏览:583
查成绩密码忘了怎么办 发布:2025-07-10 13:52:21 浏览:819
java死 发布:2025-07-10 13:51:30 浏览:996
车辆设施配置有哪些 发布:2025-07-10 13:42:28 浏览:820