社区
C语言
帖子详情
如果源代码include了很多没用到的头文件,编译出来的可执行程序的大小
Endoresu
2011-08-22 05:46:19
编译出来的可执行程序的大小会不会比没有include这些没用到的头文件的源代码编译出来的可执行文件大?
当然我说的源代码除了include外,其他都相同
...全文
271
7
打赏
收藏
如果源代码include了很多没用到的头文件,编译出来的可执行程序的大小
编译出来的可执行程序的大小会不会比没有include这些没用到的头文件的源代码编译出来的可执行文件大? 当然我说的源代码除了include外,其他都相同
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
AnYidan
2011-08-23
打赏
举报
回复
2,3楼正确
除非你的头文件中为变量分配了空间(一般的头文件中禁止),否则大小一样
暮雨晨舟
2011-08-23
打赏
举报
回复
不是很清楚 UP
xiaoshapp
2011-08-23
打赏
举报
回复
应该不会另算空间
Athenacle_
2011-08-23
打赏
举报
回复
[Quote=引用 3 楼 luciferisnotsatan 的回复:]
如果你把定义都写都文件里,那会。如果只声明,那么多大关系。
[/Quote]
+1
声明(包括函数声明与变量声明)都不会占用空间;
定义(就是变量占用内存的行为)都会占用空间。
luciferisnotsatan
2011-08-22
打赏
举报
回复
如果你把定义都写都文件里,那会。如果只声明,那么多大关系。
jackyjkchen
2011-08-22
打赏
举报
回复
除非有static变量,否则头文件与输出大小无关
ouyh12345
2011-08-22
打赏
举报
回复
可以自己测试一下
照理不会改变exe大小,除非头文件里有很多定义
《C深度解析》第二章 C预
编译
——宏定义、条件
编译
、
头文件
包含、特殊预
编译
关键字
(3)条件
编译
:#if、#else、#elif #endif、#ifdef和#ifndef、#if与defined、条件
编译
与配置文件 (4)一些特殊的预
编译
关键字与实际应用:defined、#error、#line、#与##、#pragma (5)文件包含:是否只能包含.h...
C/C++从
源代码
到生成
可执行程序
的过程详解!
编译
,
编译
程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成
可执行程序
。
源代码
(.c)-->预处理(.i)-->
编译
-->优化-->汇编(.s / .o)-->链接-->可执行文件 Source--(
编译
)--> Assembly--(......
源代码
到
可执行程序
的过程详解:预
编译
、
编译
、汇编、链接
(1)首先是将.c源文件和.h
头文件
经过预
编译
(cpp是预
编译
器),得到.i文件,主要是进行的一些替换工作;(2)将.i文件经过
编译
器(gcc)处理,得到.s汇编文件,现在文件内容已经从C语言编程了汇编语言;(3).s汇编文件经过汇编器(as)处理变成.o文件,此时的.o文件已经是二进制文件;(4)最后将所有.o文件和依赖的静态库、动态库通过链接器(ld)生成
可执行程序
a.out;
源程序到
可执行程序
的
编译
过程
一份
源代码
,从开始产生到成为
可执行程序
的过程:预处理——
编译
——汇编——链接。 1、预处理 预处理又叫预
编译
,主要解释源文件中所有的预处理指令,包括
头文件
的展开和宏定义的替换,形成.i文件;具体细节就是处理以“#”开头的预
编译
指令:#
include
,#defind,ifdef/ifndef和删除所有注释等工作。 预处理并不占用运行时间,同时预处理指令本身并不是C语言的组成部分,因此预处理...
源代码
生成
可执行程序
过程
问:经常敲代码,代码是如何生成
可执行程序
的? 答:过程分为两个大的过程:翻译和链接;翻译分为
编译
和链接;
编译
又分为预
编译
,
编译
,汇编三个过程(具体过程看下图) 程序编码: gcc test.c -o test 1)第一步:预处理器扩展
源代码
—–展开
头文件
(#
include
命令包含文件),#define定义标识符的替换,去除注释 2)第二步:
编译
器产生两个源文件的汇编代
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章