1. 程式人生 > >在Linux(Ubuntu)中使用終端編譯並執行.c和.cpp檔案

在Linux(Ubuntu)中使用終端編譯並執行.c和.cpp檔案

首先要保證系統中安裝了C語言和C++對應的編譯器:gcc -> C  ,g++ -> C++

1、.c檔案的編譯與執行

(1).c檔案hello.c程式碼如下:

#include<stdio.h>
int main()
{
        printf("Hello world !\n");
        return 0;
}

在當前路徑下編譯.c檔案:

gcc -o hello hello.c

編譯完成後可以看到在和hello.c相同目錄下有一個hello的可執行檔案。

在當前路徑下執行編譯後的可執行檔案:

./hello

注意一定要加上路徑才能執行,點表示當前路徑。直接hello不新增路徑,不能執行


(2)gcc指令舉例

gcc hello.c         會預設生成一個a.out的可執行檔案

gcc hello.c -o     會產生一個 hello 可執行檔案

gcc hello.c -o myhello    會產生一個 myhello 可執行檔案

(3)gcc的詳細過程

詳細過程可以分為四步:可以手動進行這四個步驟:

第一步:預處理。#號開頭的程式碼全被解決掉(預編譯,包含庫,巨集定義等等),產生一個字尾.i的檔案以便下一步使用。

                gcc -E hello.c    (不會產生.i檔案,檔案內內容列印在了終端,所以需要將這些資訊重定向到.i檔案)

                gcc -E hello.c >> hello.i

第二步:編譯。這一步主要檢查語法錯誤。產生一個字尾.s的檔案(彙編檔案)

                gcc -S hello.i     (大寫字母S)

第三步:彙編。產生字尾.o的object目標檔案,二進位制,但不可以執行,因為缺少庫資訊

                gcc -c hello.s

第四步:連結。新增庫資訊,產生一個字尾.o的可執行檔案

                gcc hello.o -o hello

2、.cpp檔案的編譯與執行

.cpp檔案hello.cpp程式碼如下:

#include<iostream>
using namespace std;
int main()
{
        cout << "Hello world !" << endl;
        return 0;
}

在當前路徑下編譯.cpp檔案:

g++ -o hello hello.cpp

編譯完成後可以看到在和hello.cpp相同目錄下有一個hello的可執行檔案。

在當前路徑下執行編譯後的可執行檔案:

./hello

注意一定要加上路徑才能執行,點表示當前路徑。直接hello不新增路徑,不能執行


相關推薦

LinuxUbuntu使用終端編譯執行.c.cpp檔案

首先要保證系統中安裝了C語言和C++對應的編譯器:gcc -> C  ,g++ -> C++1、.c檔案的編譯與執行(1).c檔案hello.c程式碼如下:#include<stdio.h> int main() { printf("H

LinuxUbuntu--在終端命令列中用字元顯示圖片——cacaview

讓我們先看一下效果圖吧 首先我們要先安裝一下cacaview 命令如下: sudo apt install caca-utils 安裝完成後執行: cacaview 1.jpg 回車!!!,一張字元組成的圖片就顯示出來了 還可以通過按g/G來調整圖片的

在Windows 10 自帶的LinuxUbuntu安裝redis 步驟Mark

安裝步驟參考:https://blog.csdn.net/xiangwanpeng/article/details/54586087問題一:安裝完gcc後執行make命令的時候出現 'make' can be found in the following packages:於

LinuxUbuntu改變敲入sudo之後記住密碼的時間

在使用Ubuntu時可能會遇到當敲入sudo XXX XXX….$: 之後系統會記錄密碼一段時間,如果想要改變這個記錄的時間(系統預設是5分鐘),方法如下: 輸入sudo visudo 找到”Defaults env_reset”行(如果沒有找到,就直接加入

linuxubuntu一些特殊符號

? 匹配一個字元 * 匹配任意字串 () 開一個子程序,見程式碼 sorrow@ubuntu:~$ (ccc=1000) sorrow@ubuntu:~$ (echo $ccc) sorrow@ubuntu:~$ echo $ccc

NS3如何編譯執行指令碼 Command Line命令列引數設定

二、編譯、執行指令碼和Command Line命令列引數設定 7. 編譯和執行指令碼主要步驟 1) 將編寫的指令碼複製到ns-3.22/scratch目錄下(可以在ubuntu視窗介面直接複製) 進入ns3目錄: /ns-3.22 $ cp examples/tutori

linuxubuntu系統已經安裝好輸入法必需的框架輸入法,如何切換輸入法?

我們知道在linux系統右上角設定->裝置->鍵盤中可以設定切換輸入法的快捷鍵,預設是super+空格,也就是windows鍵+空格。但是我在裝了一個預設漢語字母輸入法,谷歌輸入法和搜狗拼音輸入法後卻不能在他們之間來回切換。 後來終於發現只有同一個框架下的輸入法才可以自由使用快捷

LinuxUbuntu下的OpenGl的環境安裝, 在qt程式使用opengl庫

OpenGl的環境安裝 以下參考自: https://blog.csdn.net/wasaiheihei/article/details/52085397 1. 建立基本編譯環境 首先不可或缺的,就是編譯器與基本的函式庫,如果系統沒有安裝的話,請依照下面的方式安裝: $ sudo a

老牛知點所以然-LinuxUbuntu配置安卓開發環境及過程常見問題解決

[TOC] 題記: 這篇部落格基本上是半年多實踐過程中積累到筆記中的。在第二次配置完開發環境後,我就有意識的把大概的配置過程形成了一個筆記,這半年多將近一年的時間裡,陸續發現了一些不足和謬誤,還有以前踩過的坑沒有及時記下來,最近又踩過的,逐漸補充了過來,算是

linuxubuntu編譯busybox遇到的問題處理辦法

今天研究了一下busybox的編譯。自己下了一個busybox-1.25.0的版本(直接從busybox官網上下載:https://busybox.net/downloads/),進行編譯,遇到了一些問題,通過百度搜索和自己摸索,也成功解決了,詳細記錄如下:首先交代一下系統版

linuxubuntu 創建桌面圖標

mys devel navicat intellij evel log 執行權 avi mina 1 創建desktop後綴文件 2 添加內容 [Desktop Entry]Name=navicat// 應用名字Exec=/opt/navicat112_mysql_cs_

Linuxubuntu安裝redis集群,redis集群搭建

sof 安裝redis redis wget fig 開啟 ++ gem OS 今天學習一下redis集群的搭建。redis在現在是很常用的數據庫,在nosql數據庫中也是非常好用的,接下來我們搭建一下redis的集群。 一、準備

LinuxUbuntu常用命令

需要 ip地址 useradd 賬號 his word color -a change 查看時間    cal :顯示當前日期。    cal 2018 :顯示全年日歷。/ cal -y 顯示當年日歷。    date :顯示當前時間。   這幾個一般不會用到了解即可。 查

Linuxubuntu下安裝pycharm出錯Unsupported major.minor version 52.0

version -i sim one line height 檢測 cin 變量 已安裝python 已安裝jdk 在pycharm文件夾中bin中執行sh ./pycharm.sh 時出錯:Unsupported major.minor version 52.0 這個錯誤

阿里雲 LinuxCentOSRedis配置注意事項

1,執行的Redis伺服器提示找不到該命令: 執行ln -s /root/redis-2.8.17/src/redis-server / usr / bin / redis-server,為redis-server建立軟連線,其中/root/redis-2.8.17/src/為我redis安裝目

阿里雲 LinuxCentOSMySQL5.7安裝配置以及遠端連線配置最新完整版

1, mysql57-community-release-el7-11.noarch.rpm 點選下載並上傳到阿里雲。 2,切換資料夾,然後一步步輸入下面三條命令,即安裝好的MySQL的 (1),rpm -ivh mysql57-community-release-el7-1

Vmware虛擬機器完整建立一個linuxUbuntu系統全過程

上一篇中,我們已經完整的講完了虛擬機器的安裝和虛擬機器工具的安裝,使我們的Ubuntu實現的互動共享的功能,這一篇,我們要講的是用ssh和Xshell實現伺服器的功能。 第一步:獲取軟體(包含註冊碼) 提取碼:q2j1 第二步: 安裝過程截圖 第三步:

Vmware虛擬機器完整建立一個linuxUbuntu系統全過程

在上一篇中,我們已經成功的將我們的虛擬機器安裝了系統,完成了對系統的設定,那麼,我們如何能將本機檔案和虛擬機器檔案進行互動和共享呢?還有,解析度上我們怎麼得到我們想要的解析度呢? 第一步: 開啟我們的虛擬機器,然後單擊VMware選單欄虛擬機器選項,在彈出的選項中選擇安裝VMware T

Vmware虛擬機器完整建立一個linuxUbuntu系統全過程

上一篇,我們講到了VMware的安裝和建立一個新的虛擬機器的框架,這篇我們就講一下如何將我們的下載的linux系統匯入到我們的虛擬機器框架中。 第一步: 開啟VMware,點選編輯虛擬機器設定,選擇CD/DVD(SATA)將右邊的連線改成使用ISO映像檔案,瀏覽找到你的Ubuntu壓縮包

Vmware虛擬機器完整建立一個linuxUbuntu系統全過程

所需軟體下載: Vmware10虛擬機器+ubuntu16.04.3+啟用金鑰獲取  提取密碼: 8bzm   當軟體下載完畢後 我們就做好了一個完整虛擬機器所需要的所有初步軟體,所以接下來我們先進行第一步Vmware虛擬機器的安裝。  第