日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

關于C++的.cpp文件運行全過程_C 語言

作者:雨落水漲next ? 更新時間: 2023-06-05 編程語言

.cpp文件運行全過程

今天來寫一寫.cpp文件是怎么一步一步變成.exe文件的,以便更好的理解C++內核

第一步

先用編輯器編輯好源代碼文件,也就是.cpp文件

int main() {}

然后是對該文件進行預處理,也就是常用的三個預處理命令(此三者嚴格意義上不算是C++的語句):

文件包含:將該文件內容合并到源代碼中

#include <iostream>

條件編譯:有時候一個頭文件可以引入另外一個頭文件,條件編譯防止頭文件的重復包含和編譯

#ifndef __PERSON_H__?? ??? ?// 如果這個頭文件沒有被包含
#define __PERSON_H__?? ??? ?// 就包含這個頭文件并且定義這個變量
#endif

宏定義:宏不占內存,編譯器在編譯之前對源代碼做一些文本替換的處理

#define MAXSIZE 100

第二步

對該文件中的內容進行詞法、語法分析,然后轉化成二進制文件(.obj&.o文件后綴)

之后把二進制文件(.obj&.o文件后綴)和靜態鏈接庫(.lib&.a文件后綴)進行合成為.exe文件

靜態鏈接庫:可以看做是自己寫的.h文件生成的.lib(Windows)或者.a(Linux&Unix)文件

第三步

運行.exe文件,并在過程中加載動態鏈接庫(.dll文件后綴)

動態鏈接庫:通過外部引入的.dll配置文件,如數據庫,如opencv等等

附:

靜態鏈接庫比動態鏈接庫更耗內存,靜態鏈接庫是由多個文件組成的,運行過程中,分別在內存中開辟不同的內存空間;而動態內存都只在一塊內存中進行存儲

在一個工程中如何單獨運行一個cpp文件

在我們使用visual studio 2019的時候,一個工程下面會包含很多源文件(.cpp),如何單獨運行其中一個,我這里有兩種方式:

第一種是禁用其它的.cpp

  • 第一步:在.cpp文件右擊選擇屬性
  • 第二步:在從生成中排除選擇是

  • 第三步:點擊確認

將要除運行外的其它.cpp文件禁用。

第二種是注釋

將除運行外的其它.cpp文件中的main()函數注釋掉,這樣就可以只運行一個.cpp文件。

這兩種方式僅針對于剛剛開始學習C++的人。

總結

原文鏈接:https://lhcpp.blog.csdn.net/article/details/113853541

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新