gpt4 book ai didi

c++ - 了解编译器的工作原理

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:21:20 25 4
gpt4 key购买 nike

我正在学习 C++ 编程语言,我对编译器如何创建可执行文件有疑问。我的书说:

C++ is a compiled language so you need to translate the source code in a file that the computer can execute. This file is generated by the compiler and it's called the object code ( .obj ), but a program like the hello world program is composed by a part that we written and part of the C++ library.

这是 hello world 程序中的哪个部分?

然后我的书说:

You must compile and link the two parts of the program to produce an executable file.

这是否意味着可执行文件是程序两部分链接的结果而目标代码不能执行?

最佳答案

两部分是1)“你调用打印函数并传入字符串的代码”,这是你编译好的hello world程序; 2) 实现打印函数的代码(比如“std::cout <<”)。我们称之为标准库。

显然,如果没有标准库目标文件,您将无法获得完整的可执行文件,因为缺少 std::cout 的实现。

有一个标准库的原因之一是使用户代码(你的 hello world 文件)在不同的操作系统之间更具可移植性,因为在 Unix 系统中你实际上必须使用“写"打印字符串的函数;但在其他系统中,您可以使用“write”以外的功能。标准库为您统一了它。

关于标准库目标文件的详细信息包括模板实例化等技术,您可能暂时不感兴趣。

关于c++ - 了解编译器的工作原理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25826277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com