目錄
- 安裝編譯器
- 一.c
- 編譯+運行(粗暴簡單)
- 1.編寫 C 程序:
- 2. 預處理:
- 3.編譯:
- 4. 匯編:
- 5. 鏈接:
- 6.運行
- 二.c++
- 編譯+運行(粗暴簡單)
- 1.編寫 C++ 程序:
- 2.預處理:
- 3.編譯:
- 4.匯編:
- 5. 鏈接:
- 6.運行程序:
- 三 . 關鍵區別
- 四. 其他注意事項
安裝編譯器
確保安裝了 gcc(用于 C 程序)和 g++(用于 C++ 程序)編譯器:
sudo apt update
sudo apt install build-essential # 安裝 GCC 和 G++ 編譯器
一.c
編譯+運行(粗暴簡單)
使用 gcc 編譯器編譯程序,并生成一個可執行文件。gcc hello.c -o hello編譯成功后,運行生成的可執行文件:./hello
輸出:Hello, Ubuntu! (C)
1.編寫 C 程序:
nano hello.c 打開或創建
輸入以下代碼:
#include <stdio.h>
int main() {printf("Hello, Ubuntu! (C)\n");return 0;
}
2. 預處理:
gcc -E hello.c -o hello.i
-E:僅執行預處理步驟。
hello.i:預處理后的輸出文件。
3.編譯:
gcc -S hello.i -o hello.s
-S:生成匯編代碼。
hello.s:匯編代碼文件。
4. 匯編:
gcc -c hello.s -o hello.o
-c:生成目標文件(二進制)。
hello.o:目標文件。
5. 鏈接:
gcc hello.o -o hello
將目標文件鏈接為可執行文件。
運行程序:
6.運行
./hello
輸出:Hello, Ubuntu! (C)
二.c++
編譯+運行(粗暴簡單)
使用 g++ 編譯器編譯程序,并生成一個可執行文件。g++ hello.cpp -o hello_cpp
編譯成功后,運行生成的可執行文件:./hello_cpp
輸出:Hello, Ubuntu! (C++)
1.編寫 C++ 程序:
nano hello.cpp 打開或創建
輸入以下代碼:
#include <iostream>
int main() {std::cout << "Hello, Ubuntu! (C++)" << std::endl;return 0;
}
2.預處理:
g++ -E hello.cpp -o hello.ii
-E:僅執行預處理步驟。
hello.ii:預處理后的輸出文件。
3.編譯:
g++ -S hello.ii -o hello.s
-S:生成匯編代碼。
hello.s:匯編代碼文件。
4.匯編:
g++ -c hello.s -o hello.o
-c:生成目標文件(二進制)。
hello.o:目標文件。
5. 鏈接:
g++ hello.o -o hello_cpp
將目標文件鏈接為可執行文件。
6.運行程序:
./hello_cpp
輸出:Hello, Ubuntu! (C++)
三 . 關鍵區別
編譯器:
C 程序使用 gcc。
C++ 程序使用 g++。
文件擴展名:
C 程序通常使用 .c 擴展名。
C++ 程序通常使用 .cpp 或 .cc 擴展名。
頭文件:
C 程序使用 #include <stdio.h>。
C++ 程序使用 #include <iostream>。
四. 其他注意事項
調試:可以使用 gdb 調試編譯后的程序。
sudo apt install gdb
gdb ./hello
優化:在編譯時添加 -O2 或 -O3 標志以啟用優化。
gcc -O2 hello.c -o hello
多文件編譯:如果有多個源文件,可以一起編譯:
gcc file1.c file2.c -o program