国产精品高清一区二区三区不卡-国产精品一区二区三区免费视频-日韩免费高清一级毛片-亚洲欧美一区二区三区国产精品-日韩欧美一区二区三区不卡视频-亚欧免费视频一区二区三区-亚洲欧美日韩一区成人-欧美日韩视频综合一区无弹窗-精品日韩在线视频一区二区三区-国内精品视频一区二区三区

你好,歡迎進入江蘇優(yōu)軟數(shù)字科技有限公司官網(wǎng)!

誠信、勤奮、創(chuàng)新、卓越

友好定價、專業(yè)客服支持、正版軟件一站式服務(wù)提供

13262879759

工作日:9:00-22:00

一個神奇的腳本,一鍵運行各類程序(for Notepad++)

發(fā)布時間:2023-07-17

瀏覽次數(shù):0

【原創(chuàng),轉(zhuǎn)載請注明來自公眾號“數(shù)據(jù)挖掘機修煉筆記”】

前言

一年前,我在公眾號寫過一篇文章《用++、C/C++開發(fā)》,大致講了如何使用++外部運行命令來編譯運行相應(yīng)的程序。 現(xiàn)在看來,是有點明顯了。 狹窄

現(xiàn)在,給大家分享一個我想了一天想寫的++腳本。 它可以一鍵編譯或運行/C/C++/Java程序。 理論上可以根據(jù)你的需求擴展到更多語言。

談?wù)摼庉嬈骱?IDE

進入題外話之前,我們先說一下開發(fā)環(huán)境。 你可以根據(jù)實際情況選擇是否真的要使用++進行開發(fā)(用PS++打開文本文件的速度還是蠻快的,即使不使用它來開發(fā),也可以用它來打開文件) 。 出色的)

一般來說,開發(fā)環(huán)境無非就是兩種,編輯器(如++、vim、emacs)和IDE(如IDEA、、、),我來說說我對這三者的理解:

今天是中秋節(jié)。 如果把它比作愛情的話,小編就是一個單純無知的女孩。 你要“調(diào)教”她,告訴她你需要什么,挖掘她的潛力。 你帶來巨大的成就感; IDE 是一只狡猾的社交蝴蝶,它能讀懂你的言語和情緒,還能猜出你的想法。 你只需要給出一點提示,她就能幫助你直達巔峰。

因此,我建議:初學(xué)者可以先嘗試使用編輯器,熟悉語言的句型、編譯運行方法,打好基礎(chǔ)。 也可以用來快速測試一些簡單的碎片代碼; 但如果你開發(fā)的項目比較小,特別是需要同步協(xié)作的時候,使用IDE更加方便、穩(wěn)定、高效。

鑒于很多網(wǎng)站未經(jīng)授權(quán)抓取了我的原創(chuàng)文章,我決定在文章中插入二維碼以維護出處,希望不打擾您閱讀

要安裝并運行的腳本

以下操作均在++中進行,所以請先安裝++

步驟1。 安裝插件

++菜單欄->插件->->顯示,點擊進入,找到,安裝。安裝成功后重啟++,會出現(xiàn)在菜單欄->插件

第2步。 腳本:判斷文件是否存在

該腳本的作用是判斷文件是否存在。 之前我還以為句型和DOS的一樣,但是看了文檔后發(fā)現(xiàn)它只支持很少的DOS命令。因此,在DOS下需要通過一句就能完成的功能自己在DOS下寫的。

本節(jié)參考,具體為:點擊++菜單欄->插件->->,在腳本編輯框中輸入以下代碼:

set FILEEXISTS = 0
npe_console v+
cmd /c if exist $(ARGV) echo Exists
if "$(OUTPUTL)" != "Exists" goto ...
set FILEEXISTS = 1
:...
npe_console v-

單擊下面的按鈕保存腳本,并將其命名為

步驟3. 腳本:編譯并運行

高潮即將來臨。 這個腳本是我根據(jù)文檔的學(xué)習(xí)自己做的一個輪子。 它可以對不同后綴的程序文件進行不同的編譯和運行操作。 目前支持/C/C++/Java,并可自行擴展。 。

和上一節(jié)一樣,先進入腳本編輯框,輸入以下代碼(有興趣的可以閱讀代碼注釋,后面可以展開)

npp_console disable // 關(guān)閉顯示,否則執(zhí)行時腳本時會在console窗口顯示每條腳本語句,有礙觀感
cd "$(CURRENT_DIRECTORY)"
if $(EXT_PART) == .java goto java
if $(EXT_PART) == .py goto python
if $(EXT_PART) == .cpp goto cpp
if $(EXT_PART) == .c goto c
goto error1 // 當(dāng)非c/c++/python/java文件時,直接報錯
// 下面是java的編譯、執(zhí)行、報錯,與后面c/c++類似
label java 
npp_save // 保存當(dāng)前程序文件
cmd /c if exist $(NAME_PART).class (del $(NAME_PART).class) // 調(diào)用cmd窗口刪除上次程序執(zhí)行時編譯的結(jié)果,/c是表示執(zhí)行完cmd指令后關(guān)閉窗口,不加/c會使窗口一直打開,無法向下執(zhí)行腳本
npp_console enable //打開顯示,可以查看下面語句執(zhí)行結(jié)果
javac -encoding UTF8 $(FILE_NAME) // 設(shè)置javac的編碼格式為UTF8,否則代碼中含有中文注釋會報錯
npp_console disable // 再次關(guān)閉顯示,因為下面的語句沒必要呈現(xiàn)在console窗口
npp_exec CheckFileExists $(NAME_PART).class // 調(diào)用自己寫的腳本判斷是否存在.class文件
if $(FILEEXISTS)==1 goto j1 // 編譯成功執(zhí)行運行,不成功拋錯
goto error2
label j1
npp_console enable
java $(NAME_PART)
npp_console disable
goto end
label cpp
npp_save
cmd /c if exist $(NAME_PART).exe (del $(NAME_PART).exe)
npp_console enable
g++ -o $(NAME_PART).exe $(FILE_NAME)
npp_console disable
npp_exec CheckFileExists $(NAME_PART).exe
if $(FILEEXISTS)==1 goto c1
goto error2
label c1
npp_console enable
$(NAME_PART)
npp_console disable
goto end
label c
npp_save
cmd /c if exist $(NAME_PART).exe (del $(NAME_PART).exe)
npp_console enable
gcc -o $(NAME_PART).exe $(FILE_NAME)
npp_console disable
npp_exec CheckFileExists $(NAME_PART).exe
if $(FILEEXISTS)==1 goto c2
goto error2
label c2
npp_console enable
$(NAME_PART)
npp_console disable
goto end
label python
npp_save
npp_console enable
python $(FILE_NAME)
npp_console disable
goto end
label error1
npp_console enable
echo 錯誤:非程序文件
npp_console disable
goto end
label error2
npp_console enable
echo 錯誤:編譯未通過
npp_console disable
goto end
label end
npp_console enable

保存腳本,我命名為,然后在++菜單欄找到 -> 運行 -> 管理快捷鍵 ->,并設(shè)置運行這個腳本的快捷鍵(如Ctrl+D),就大功告成了!

步驟4。 運行腳本

用++編輯代碼文件時,建議選擇UTF-8編碼,點擊菜單欄->格式-> in UTF-8 BOM 。以避免運行時編碼錯誤

當(dāng)您編輯以 .py 結(jié)尾且?guī)в?++ 的腳本時,請按 Ctrl+D

運行失?。?/p>

sublime函數(shù)跳轉(zhuǎn)插件_sublime text 3 函數(shù)跳轉(zhuǎn)

運行成功:

sublime text 3 函數(shù)跳轉(zhuǎn)_sublime函數(shù)跳轉(zhuǎn)插件

爪哇

如上,編輯以.java結(jié)尾的java文件時,按Ctrl+D

編譯失敗:

sublime函數(shù)跳轉(zhuǎn)插件_sublime text 3 函數(shù)跳轉(zhuǎn)

編譯運行成功:

sublime text 3 函數(shù)跳轉(zhuǎn)_sublime函數(shù)跳轉(zhuǎn)插件

C/C++

如上,編輯以.c結(jié)尾的C文件或以.cpp結(jié)尾的C++文件時sublime text 3 函數(shù)跳轉(zhuǎn),按Ctrl+D

編譯失敗:

sublime函數(shù)跳轉(zhuǎn)插件_sublime text 3 函數(shù)跳轉(zhuǎn)

編譯運行成功:

sublime函數(shù)跳轉(zhuǎn)插件_sublime text 3 函數(shù)跳轉(zhuǎn)

上述以外的程序文件

當(dāng)運行不以上述后綴結(jié)尾的程序文件時,按Ctrl+D:

理想與現(xiàn)實

說一下我為什么會產(chǎn)生寫這個腳本的想法,以及遇到的一些坑。 不感興趣的可以直接跳過~

原因

理想的

將DOS命令行寫入,而不是所有運行命令

現(xiàn)實

仔細(xì)閱讀文檔后,我發(fā)現(xiàn)它只支持一些DOS命令(if、del、goto),而和else一樣,exist根本不支持。 真是一團糟,我得想很多辦法才能完成; 另外del老提示找不到文件。 ,只能使用專門的腳本來判斷文件是否存在; 而如果判斷結(jié)束就必須使用goto跳轉(zhuǎn),減少代碼量和代碼邏輯。 ,終于解決了

所以,雖然這些天我更喜歡在 Mac 下使用 Text3,但 Mac 的方法很好;-P

獎金

最近寫了幾篇文章,可以直接生成pdf,但是公眾號平臺很難插入附件。 另外公眾號支持不太好,呈現(xiàn)的文章容易出現(xiàn)代碼縮進混亂,部分功能不支持。

所以我打算提供pdf下載鏈接sublime text 3 函數(shù)跳轉(zhuǎn),會在下周發(fā)表的《數(shù)據(jù)挖掘競賽通用框架》一文中發(fā)布,敬請關(guān)注

如有侵權(quán)請聯(lián)系刪除!

13262879759

微信二維碼