开发者社区> 问答> 正文

一段C语言程序从编译的到软件打开整个过程是怎样的?

如题,大致的我明白就是编译器转成二进制然后给CPU然后输出,谁能给我细讲下,多谢了

展开
收起
a123456678 2016-06-08 21:55:52 2253 0
2 条回答
写回答
取消 提交回答
  • 这里面涉及太多的细节,简单的回答无法解释清楚。
    推荐你看一下这本书:《程序员的自我修养:链接、装载与库》https://book.douban.com/subject/3652388/

    2019-07-17 19:32:49
    赞同 1 展开评论 打赏
  • 比如你编译使用的是cc,那么cc就是会对源代码进行解释,这些解释具体你也不用知道,你就知道cc可以把c源码转化成汇编,再到机器码,到了机器码就是cpu可以识别出来的操作指令了,
    运行是怎么回事呢?
    举个例子比如在shell下执行某个文件,那么shell就会创建一个子进程,然后子进程会调用exec,这个函数是对其他应用程序的引用,也就是进入你指定的可执行程序,在指定了子进程的进程表,u区等等初始化好之后,进入相应的区就可以了,不知道这个解释你能不能理解。因为这里面的细节太多了。

    2019-07-17 19:32:49
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
15分钟打造你自己的小程序 立即下载
小程序 大世界 立即下载
《15分钟打造你自己的小程序》 立即下载