PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] c++ 编译出来的程式档案比较大
楼主:
descent
(“雄辩是银,沉默是金”)
2014-12-04 19:50:04
typedef struct Str_
{
char c;
int a;
}Str;
Str ret_str()
{
Str str;
str.c='a';
str.a=1;
return str;
}
int main(int argc, char *argv[])
{
Str s;
s = ret_str();
s.c='c';
s.a=5;
return 0;
}
descent@debianlinux:return_struct$ gcc rs.c -o rs
descent@debianlinux:return_struct$ g++ rs.c -o rscpp
descent@debianlinux:return_struct$ ls -l rs rscpp
-rwxr-xr-x 1 descent descent 4912 Dec 4 19:47 rs
-rwxr-xr-x 1 descent descent 5128 Dec 4 19:47 rscpp
我一直以为这样的程式用 c++ compiler 编出来应该要和 c compiler
的大小一样。
作者: LiloHuang (十年一刻)
2014-12-04 19:59:00
用 nm 比较看看,CPP的版本应该会多出不少东西 XD如果整个程式码用 extern "C" {} 包住应该会很接近才是我想 C++ 编译器应该会多做 name mangling 的部分
作者:
chchwy
(mat)
2014-12-04 22:33:00
c++标准库比C大多了.
作者:
littleshan
(我要加入剑道社!)
2014-12-04 22:40:00
因为g++会看副档名,看到.c还是会用c compiler去编唯一的差别是g++会多连结libstdc++你用 gcc rs.c -o rs -lstdc++ 出来大小就一样了
作者: LiloHuang (十年一刻)
2014-12-04 23:08:00
我记得 g++ 的文件有写,默认都会用 C++ compiler ...g++ is a program that calls GCC and treats `.c',`.h' and `.i' files as C++ source files instead ofC source files unless -x is used.
http://goo.gl/9QRrzC
官方文件出处
作者:
littleshan
(我要加入剑道社!)
2014-12-05 00:35:00
噢,那是我弄错了
继续阅读
[问题] class里的struct
kenn2001
[问题] OpenGL画布和WindowForm整合成同一接口
simonzhao219
[问题] C++文件内的中文字体是乱码..
BIAO
[问题] template类别中隐匿类别的静态变量初始化
janyfor
[分享] 有的没的(诶)
Killercat
[问题] opencv findHomography
a462428
[分享] 双重指标小应用
jacky1989
[讨论] 面试时碰到的几个C语言问题
caxz
[问题] C++有方法可以印出当下执行程式名称吗?
smilekerker
[问题] function的传值&回传值副本问题
anoymouse
Links
booklink
Contact Us: admin [ a t ] ucptt.com