Sublime Text運行C和C++程序


Ref:http://c.biancheng.net/view/8094.html

配置成功后,用Sublime Text寫C語言,C++代碼的時候,C語言的后綴用.c,C++的后綴后.cpp

Sublime Text運行C和C++程序

Sublime Text 是一款當下非常流行的文本編輯器,其功能強大(提供有眾多的插件)、界面簡潔、還支持跨平台使用(包括 Mac OS X、Linux 和 Windows)。

在程序員眼中,Sublime Text 不僅僅是一個文本編輯器,它還可以作為代碼編輯器。只要對 Sublime Text 進行簡單的設置,它就可以自行調用 GCC 編譯器編譯寫好的代碼。

考慮到 Sublime Text 跨平台的特性,本節將分別為讀者講解,如何設置 Windows、Linux(以 Ubuntu 為例)以及 Mac OS X 系統中的 Sublime text 編輯器,使其具備執行 C、C++ 程序的能力。

Windows配置Sublime Text

如圖 1 所示,是筆者本機已經安裝好的 Sublime Text。如果讀者尚未安裝,先前往  Sublime Text官網下載並安裝(安裝過程非常簡單,這里不做過多贅述)。
要知道,剛剛安裝的 Sublime Text 無法自行具備運行 C、C++ 代碼的能力,需要我們手動對其進行設置。

0. 不過在開始設置之前,讀者需保證當前系統中已經初始化好了 GCC 編譯環境。打開命令行窗口,並執行 gcc -v 指令,如果輸出 GCC 編譯器的具體版本等信息,表明當前系統以成功配置了 GCC 編譯環境(如圖 2 所示)。

如果讀者所用環境

中尚未配置 GCC 編譯環境,可閱讀《MinGW下載和安裝教程》 (https://osdn.net/projects/mingw/)一節進行安裝。(或者前往我的博客下載MinGW.exe文件:https://i.cnblogs.com/files)

運行mingw-get-set.exe,默認路徑安裝(C:\MinGW里),安裝Basic Setup里的全部Package.
安裝完成后將 添加環境變量 .bat 放在桌面上,以管理員身份運行該文件,再參考
https://zhuanlan.zhihu.com/p/215841527
https://www.bilibili.com/video/BV1qf4y1Q7Vm?from=search&seid=9718456989708788914&spm_id_from=333.337.0.0
添加環境變量
環境變量內容如下:

- 變量名 變量值
- C_INCLUDEDE_PATH C:\MinGW\include
- LIBRARY_PATH C:\MinGW\lib
- Path C:\MinGW\bin
即可參照 https://www.cnblogs.com/chuqianyu/p/15792207.html 繼續操作。

 

在已安裝好 GCC 編譯器的基礎上,接下來開始正式配置 Sublime Text 編輯器。

1) 要想使 Sublime Text 具備運行 C 語言程序的能力,需在菜單欄中依次點擊“Tools -> Build System -> New Build System”,由此即可在 Sublime Text 打開一個臨時文件,如下所示:

刪除其所有內容,並將如下內容完整地復制到該文件中:
{
    "cmd": ["gcc","${file}","-o", "${file_path}/${file_base_name}"],
    "file_regex":"^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir":"${file_path}",
    "selector": "source.c",
    "encoding":"cp936",
    "variants":
    [
        {
            "name": "C_Run",
            "cmd": ["cmd","/c", "gcc", "${file}", "-o", "${file_path}/${file_base_name}","&&", "cmd", "/c","${file_path}/${file_base_name}"]
        },
        {
            "name":"C_RunInCommand",
            "cmd": ["cmd","/c", "gcc", "${file}","-o","${file_path}/${file_base_name}", "&&","start", "cmd", "/c","${file_path}/${file_base_name} & pause"]
         }
    ]
}

  

此文件中的內容,實則是運行 C 語言程序時需要執行的 gcc 指令,只不過在 Sublime Text 文件中,需寫成以上形式。

按 Ctrl+S 組合鍵,將此文件保存起來,其中文件名默認為 untitled.sublime-build(untitile 可以自定義,例如 gcc_sublime-build),保存路徑即為按 Ctrl+S 彈出的路徑(切忌手動修改此路徑)。

2) 重新打開 Sublime Text,並依次在菜單欄中選擇“Tools -> Build System”, 在該選項中就可以看到上一步創建好的 gcc_sublime-build 的文件名 gcc,如圖 4 所示:

通過勾選 gcc 編譯選項(直接在圖 4 中點擊即可),我們就可以直接在 Sublime Text 運行寫好的 C 語言程序。比如,在 Sublime Text 編寫如下程序:
在此基礎上,選擇“Tools -> Build With...”選項,此時 Sublime Text 會彈出如下對話框:
可以看到,這里有 gcc、gcc-C_Run 和 gcc-RunInCommand 3 個選項,其中 gcc 用於編譯程序(讀者可自行查看執行結果),gcc-C_Run 用於在 Sublime Text 內部調用 GCC 編譯器並顯示程序的執行結果(如圖 7 a) 所示), gcc_RunInCommand (筆者建議采用這個編輯器) 用於在命令行窗口中借助 gcc 指令運行該程序並輸出執行結果(如圖 7 b) )。
同樣,如果想使 Sublime Text 具備執行 C++ 程序的能力,則只需再建立一個 g++_sublime-build 配置文件,並將如下內容拷貝到該文件中:
{
    "cmd": ["g++","-Wall", "${file}", "-o", "${file_path}/${file_base_name}"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.c, source.c++",
    "encoding":"cp936",
    "variants":
    [
        {
            "name": "C++_Run",
            "cmd": ["cmd", "/c", "g++", "-Wall","${file}", "-o", "${file_path}/${file_base_name}", "&&", "cmd", "/c", "${file_path}/${file_base_name}"]
        },   
        {
            "name": "C++_RunInCommand",
            "cmd": ["cmd", "/c", "g++", "-Wall","${file}", "-o", "${file_path}/${file_base_name}", "&&", "start", "cmd", "/c", "${file_path}/${file_base_name} & echo.&pause"]
        }
    ]
}

其它操作步驟,和上面是完全一樣的。由此,即可使 Sublime_Text 具備執行 C++ 程序的能力。

Mac OS X配置Sublime Text

Mac OS X 系統中,使 Sublime Text 具備執行 C、C++能力的配置過程,和 Windows 系統中的配置步驟大致相同,有以下 2 點不同:
  • 默認情況下,該操作系統中已默認安裝有 GCC 編譯器,所以如果讀者對編譯器版本沒有刻意的要求,則可以省略安裝 GCC 的過程;
  • 在 Mac OS X 系統中,需要修改 gcc_sublime-build 文件中的內容。

若想使 Sublime Text 具備執行 C 語言程序的能力,在菜單欄中依次點擊“Tools -> Build System -> New Build System”,創建一個 gcc.sublime-build 配置文件,其文件內容如下:
{
    "cmd" : ["gcc -o ${file_base_name} $file_name"],
    "shell" : true,
    "working_dir" : "$file_path",
    "selector": "source.c",
    "variants" :
    [{
        "name" : "c_Run",
        "cmd" : "./${file_base_name}"
    },
    {
      "name": "c_RunInCommand",
      "shell_cmd": "open -a Terminal.app '${file_base_name}'"
    }]
}

其中,c_Run 用於在 Sublime Text 底部顯示程序的執行結果;而 c_RunInCommend 用於在命令行窗口中顯示 C 語言程序的執行結果。仍以圖 5 中的 C 語言程序為例,則 2 個編譯選項的執行效果如下圖所示:

可以看到,使用如上指令調取命令行窗口執行 C 語言程序,除執行結果外,還會顯示其它無用的信息。因此建議讀者使用 c-Run 編譯選項執行 C 語言程序,簡單方便。

 

同理,通過創建 g++.sublime-build 配置文件,並將如下內容拷貝到該文件中:
{
    "cmd" : ["g++ -o ${file_base_name} $file_name"],
    "shell" : true,
    "working_dir" : "$file_path",
    "selector": "source.cpp",
    "variants" :
    [{
        "name" : "c_Run",
        "cmd" : "./${file_base_name}"
    },
    {
      "name": "c_RunInCommend",
      "shell_cmd": "open -a Terminal.app '${file_base_name}'"
    }]
}

即可實現令 Sublime Text 具備執行 C++ 程序的能力。

Ubuntu配置Sublime Text

要知道,Ubuntu 系統默認是不安裝 GCC 編譯器的,因此在配置 Sublime Text 之前,讀者要自行安裝 GCC 編譯器(執行 sudo apt install gcc 指令即可安裝)。

安裝 GCC 編譯器之后,即可開始配置 Sublime Text。Sublime Text 的配置過程和在 Windows 環境中大致相同,唯一不同之處在於,要修改 xxx.sublime-build 配置文件(讀者可自定義 xxx 的內容)中的內容。

如果要使 Sublime Text 具備執行 C 語言程序的能力,則可以依次選擇“Tools -> Build System -> New Build System”並創建一個 gcc.sublime-build 配置文件,其中包含如下內容:
{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "gcc \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c",

    "variants":
    [
    
     {   
        "name": "c_Run",
        "shell_cmd": "./${file_base_name}"
        },
        {   
        "name": "c_RunInCommand",
        "shell_cmd": "gnome-terminal -x bash -c \"'${file_path}/${file_base_name}';read -p '\nPress any key to continue...'\""
        }
    ]
}

如果想使 Sublime Text 具備執行 C++ 程序的能力,則可以創建一個 g++.sublime-build 配置文件,將如下內容拷貝到該文件中:

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "g++ \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.cpp",

    "variants":
    [
    
     {   
        "name": "c++_Run",
        "shell_cmd": "./${file_base_name}"
        },
        {   
        "name": "c++_RunInCommand",
        "shell_cmd": "gnome-terminal -x bash -c \"'${file_path}/${file_base_name}';read -p '\nPress any key to continue...'\""
        }
    ]
}

由此,就完成了對 Sublime Text 的配置。仍以圖 5 中的 C 語言程序為例,如下是使用 Sublime Text 執行它的效果圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM