⑴ keil平台和網頁版c語言編譯器的區別
從性質講,兩種不同的編程軟體,一個是獨立軟體,一個是內配在網頁中的。獨立軟體需要安裝,網頁打開就能用,但相對功能簡化。就像其它軟體vs和codeslocks也用來編寫c語言。而編譯是軟體里設置選擇的編譯器處理的,比如GCC,MSC,TurboC。
從應用上講,在線網頁編譯器使用簡單,但功能也少,主要學習或調試一下代碼。而專門的軟體是用於開發的,比如上面的keil就用於單片機程序的開發。
⑵ C語言的編寫工具、編譯軟體、初學者(c語言編程工具)
C語言是一門歷史很長的編程語言,其編譯器和開發工具也多種多樣,其開發工具包括編譯器,現舉幾個開發工具供大家選擇,當然也要根據自己的操作系統來選擇適合自己的開發工具。
好多剛開始接觸c語言的朋友都想知道用上面軟體開發c語言比較好,一般來說微軟的東西肯定是最好的,更適合新手學習,等上手了就可以接觸別的軟體了。
MicrosoftVisualC、MicrosoftVisualStudio、DEVC、Code::Blocks、BorlandC、WaTComC、BorlandCBuilder、GNUDJGPPC、Lwin32CCompiler3.1、HighC、TurbC、g、C-Free和Win-TC、MyTc等等,太多了,由於C語言比較成熟,所以編程環境很多。建議使用MicrosoftVisualC。
在Windows下做軟體開發,編譯器的首選當然是VisualStudio,目前微軟也有免費的MicrosoftVisualC2008Express版本可供下載和使用。但是,如果考慮做跨平台的軟體,選擇g作為編譯器無疑是明智的,無論linux,MacOSX還是其他的Unix變體,大多選用g作為編譯器,所以,選擇g作為編譯器能夠讓你的軟體提前通過編譯器的驗證,能夠更容易的在不同平台上通過編譯。TDMGCC項目已經幫助大家測試並整合了Windows平台下的g安裝工具TDMGCCOn-DemandInstaller,大家可以根據需要選擇下載並安裝那些工具包。安裝完成後,需要修改環境變數,將安裝目錄加入PATH搜索路徑中。
1、TC2.0:Borland公司的產品,在dos界面下編譯運行,小巧、靈活,但是不能使用滑鼠,界面如下:
菜單命令是alt菜單項的第一個字母,可以調試,在第一次用的時候,可以需要配置一下目錄,如下:
第一次使用可能感覺不舒服(滑鼠不能用的緣故),慢慢熟悉一段時間,就沒事了,當初在學校學習考試都是這個環境。
2、win-TC:在tc2.0的基礎上加上了界面,能夠使用滑鼠,具有語法高亮,可以嵌入匯編等特點,對新手一些,拜託了不能用滑鼠的困難。編寫完源代碼,進行編譯運行即可辯悶,軟體比較容易上手。
3、dev-C:是windows下一款開發c/c的開發環境,使用g為編譯器,遵循標准,功能比較強大,語法高亮態灶源,可以進行單步調試(這對排除錯誤很重要),進行斷點設置等功能,遵循C標准,是一款很強大的開發工具。
4、VC,微軟的產品,編譯器,鏈接器,運行,調試等功能於一體的強大開發工具,特點是功能十分強大,對於新手來說需要一段時間去摸索
c語言編程軟體(支持win7/win8)是一款支持多語言開發的開發系統。c語言編程軟體(支持win7/win8)同時支持c語言,c以及vb語言的開發,軟體能很好的兼容win7以及win8,用戶只需設置軟體兼容性,把它設為win98,winxp等等。
為大家提供的c語言編程軟體為vc6.0。VC6.0是Microsoft公司推出的一個基於Windows系統平台、可視化的集成開發環境,它的源程序按C語言的要求編寫,並加入了微軟提供的功能強大的MFC(MicrosoftFoundationClass)類庫。
c語言編程軟體(支持win7/win8)的MFC類庫中封裝了大部分WindowsAPI函數和Windows控制項,它包含的功能涉及到整個Windows操作系統。MFC不僅給用戶提供了Windows圖形環境下應用程序的框架,而且還提供了創建應用程序的組件,這樣,開發人員不必從頭設計創建和管理一個標准Windows應用程序所需的程序,而是從一個比較高的起點編程,故節省了大量的時間。另外,它提供了大量的代碼,指導帆態用戶編程時實現某些技術和功能。因此,使用VC提供的高度可視化的應用程序開發工具和MFC類庫,可使應用程序開發變得簡單。
⑶ 程序猿專用十大在線編譯器(IDE)整理
1. CodeSandbox(基於 React 的在線代碼沙盒平台) 我常用的
① 主流的腳手架都支持,比如在線create-react-app,vue-cli等(在線 fork 修改),支持 github 登錄(項目導入),也支持 cli 上傳例子,例子可以在線訪問和下載,當然也支持內嵌到其他博客等網頁中。
② 地址:https://codesandbox.io/
③ 圖示
2. CodePen(前端代碼編輯運行的網站)
① CodePen 是一個完全免費的前端代碼託管服務,主要功能有:
② 地址:https://codepen.io/
③ 圖示
3. JSRUN(支持手機端的在線JS編輯器)
① jsrun是一款支持手機端的在線JS編輯器, HTML/CSS/Javascript在線代碼運行工具,js代碼在線測試調試,是runjs的升級版支持vue.js/angular.js的在線編輯器
② 地址:http://jsrun.net/
③ 圖示
4. jsFiddle(前端代碼編輯運行的網站)
① jsFiddle 是一個Web開發人員的練習場,可在線編輯和測試 HTML、CSS、JavaScript代碼片段。在 jsFiddle 編輯的代碼,可以保存,也可分享給其他人,還可嵌入到其他網頁
② 地址:https://jsfiddle.net/
③ 圖示
5. Ideone(C和C++的在線編譯和調試工具,支持其他的60種語言) 我常用
① Ideone是C和C++的在線編譯和調試工具,支持其他的60種語言。這個工具提供許多強大的功能,允許程序員快速高效的編譯源代碼
② 地址:https://www.ideone.com/
③ 圖示
6. Codechef(C,C ++和Java的在線編譯工具)
① 它支持C,C ++和Java,非常接近真正的桌面IDE。這是超快速和易於使用。適合於課堂和作業的學生,練習面試問題。
② 地址:https://www.codechef.com/ide
③ 圖示
7. JDoodle (C,C ++和Java的在線IDE)
① 支持協作代碼。它只是從一個簡單的文本區域開始,您可以粘貼代碼,然後單擊運行。您可以更改命令行參數並在運行該程序之前設置stdin。最適合新的在線編輯器不支持的許多舊語言。
② 地址:https://www.codechef.com/ide
③ 圖示
8. OnlineGDB (在線C,C ++,Java,PHP編譯器) 我常用
① 它支持C,C ++,PHP和Java編譯器。OnlineGDB的獨特功能是,您可以逐步調試您的代碼。一旦代碼被寫入,它可以很容易地格式化,使其看起來不錯。
② 地址:https://www.onlinegdb.com/
③ 圖示
9. GCC資源管理器
① GCC編譯器資源管理器是一個互動式在線編譯器,它顯示編譯後的C++、RISE、GO(以及更多)代碼的匯編輸出。
② 地址:https://gcc.godbolt.org/
③ 圖示
10. plnkr edit在線編輯器
① js的在線編輯器。
② 地址:http://plnkr.co/edit/
③ 圖示
⑷ 用伺服器做在線編譯器
如果是針對傳統使用方法的編程語言實現一個的話涉及的內容很雜,包括:
Web伺服器+Web伺服器與後端程序交互的組件(這個可以用現成的,我用的是nginx+FCGI)
後端程序
後端核心就是一個類似調用系統給的類似execl的API執行一下對應編譯工具,用這個API時還得精心處理一下管道,把輸出內容導出來顯示回網頁。
但是因為這類程序和OJ一樣,是網路上的公共服務而且居然還允許用戶上傳代碼編譯執行,所以問題主要集中在安全處理上,而且安全問題的處理高度依賴操作系統。
以Linux為例,安全方麵包括但不僅包括以下內容:
依賴環境構建、沙盒
運行身份,包括GID、UID
資源限制,包括socket、文件操作、核心轉儲大小、文件數、子進程數等等
syscall限制
執行時間限制,包括運行時間和CPU時間
文件系統壓力
Windows下是另一堆問題要解決,比Linux復雜得多(也許是我不太會用Windows)。
我認識一人,自己實現了一個類似Haskell的東西,有和Go Playground差不多的在線運行網頁,我問他怎麼那麼快把那麼多東西都搞完了,他說,「整個語言就是用JS實現的,所以有瀏覽器就能運行,不需要後端」,這也是一種思路。
天互數據
⑸ 什麼是GCC編譯器
Linux系統下的Gcc(GNU C Compiler)是GNU推出的功能強大、性能優越的多平台編譯器,是GNU的代表作品之一。gcc是可以在多種硬體平台上編譯出可執行程序的超級編譯器,其執行效率與一般的編譯器相比平均效率要高20%~30%。 Gcc編譯器能將C、C++語言源程序、匯程式化序和目標程序編譯、連接成可執行文件,如果沒有給出可執行文件的名字,gcc將生成一個名為a.out的文件。在Linux系統中,可執行文件沒有統一的後綴,系統從文件的屬性來區分可執行文件和不可執行文件。而gcc則通過後綴來區別輸入文件的類別,下面我們來介紹gcc所遵循的部分約定規則。 .c為後綴的文件,C語言源代碼文件; .a為後綴的文件,是由目標文件構成的檔案庫文件; .C,.cc或.cxx 為後綴的文件,是C++源代碼文件; .h為後綴的文件,是程序所包含的頭文件; .i 為後綴的文件,是已經預處理過的C源代碼文件; .ii為後綴的文件,是已經預處理過的C++源代碼文件; .m為後綴的文件,是Objective-C源代碼文件; .o為後綴的文件,是編譯後的目標文件; .s為後綴的文件,是匯編語言源代碼文件; .S為後綴的文件,是經過預編譯的匯編語言源代碼文件。 Gcc的執行過程 雖然我們稱Gcc是C語言的編譯器,但使用gcc由C語言源代碼文件生成可執行文件的過程不僅僅是編譯的過程,而是要經歷四個相互關聯的步驟∶預處理(也稱預編譯,Preprocessing)、編譯(Compilation)、匯編(Assembly)和連接(Linking)。 命令gcc首先調用cpp進行預處理,在預處理過程中,對源代碼文件中的文件包含(include)、預編譯語句(如宏定義define等)進行分析。接著調用cc1進行編譯,這個階段根據輸入文件生成以.o為後綴的目標文件。匯編過程是針對匯編語言的步驟,調用as進行工作,一般來講,.S為後綴的匯編語言源代碼文件和匯編、.s為後綴的匯編語言文件經過預編譯和匯編之後都生成以.o為後綴的目標文件。當所有的目標文件都生成之後,gcc就調用ld來完成最後的關鍵性工作,這個階段就是連接。在連接階段,所有的目標文件被安排在可執行程序中的恰當的位置,同時,該程序所調用到的庫函數也從各自所在的檔案庫中連到合適的地方。 Gcc的基本用法和選項 在使用Gcc編譯器的時候,我們必須給出一系列必要的調用參數和文件名稱。Gcc編譯器的調用參數大約有100多個,其中多數參數我們可能根本就用不到,這里只介紹其中最基本、最常用的參數。 Gcc最基本的用法是∶gcc [options] [filenames] 其中options就是編譯器所需要的參數,filenames給出相關的文件名稱。 -c,只編譯,不連接成為可執行文件,編譯器只是由輸入的.c等源代碼文件生成.o為後綴的目標文件,通常用於編譯不包含主程序的子程序文件。 -o output_filename,確定輸出文件的名稱為output_filename,同時這個名稱不能和源文件同名。如果不給出這個選項,gcc就給出預設的可執行文件a.out。 -g,產生符號調試工具(GNU的gdb)所必要的符號資訊,要想對源代碼進行調試,我們就必須加入這個選項。 -O,對程序進行優化編譯、連接,採用這個選項,整個源代碼會在編譯、連接過程中進行優化處理,這樣產生的可執行文件的執行效率可以提高,但是,編譯、連接的速度就相應地要慢一些。 -O2,比-O更好的優化編譯、連接,當然整個編譯、連接過程會更慢。 -Idirname,將dirname所指出的目錄加入到程序頭文件目錄列表中,是在預編譯過程中使用的參數。C程序中的頭文件包含兩種情況∶ A)#include B)#include 「myinc.h」 其中,A類使用尖括弧(< >),B類使用雙引號(「 」)。對於A類,預處理程序cpp在系統預設包含文件目錄(如/usr/include)中搜尋相應的文件,而對於B類,cpp在當前目錄中搜尋頭文件,這個選項的作用是告訴cpp,如果在當前目錄中沒有找到需要的文件,就到指定的dirname目錄中去尋找。在程序設計中,如果我們需要的這種包含文件分別分布在不同的目錄中
⑹ 如何在 Windows 上安裝 GNU Fortran G77 編譯器
可以在terminal下輸入命令 g77 或者 gfortran 看看是否出現命令沒有找到的提示,如果是就是沒有安裝,否則是安了。 用terminal可以用類似sudo apt-get install gfortran的方式安裝(需要網路
⑺ 如何用GCC在linux下編譯C語言程序
在Linux下面,如果要編譯一個C語言源程序,我們要使用GNU的gcc編譯器,假設我們有下面一個非常簡單的源程序(hello.c):
int main(int argc,char **argv)
{
printf("Hello Linux
");
}
要編譯這個程序,我們只要在命令行下執行:
gcc -o hello hello.c
gcc 編譯器就會為我們生成一個hello的可執行文件.執行./hello就可以看到程
序的輸出結果了