導航:首頁 > 源碼編譯 > c屬於編譯還是解釋

c屬於編譯還是解釋

發布時間:2022-09-25 00:31:36

⑴ 計算機語言的種類及特點是什麼」編譯」與」解釋」的區別是什麼C源程序的結構及其書寫規則是什麼

首先,我們編寫的程序現在一般都是用高級語言編寫的,如c/c++ 以及面向對象的visual 系列;我們編寫的程序計算機是不能直接執行的,因為計算機只能執行二進製程序.因此要經過一個將我們寫的代碼翻譯成二進制的過程.
完成這個過程一般有兩種方式:1.解釋方式 2. 編譯方式
1.解釋方式是每執行一句就翻譯一句即邊執行邊解釋.這種方式每次運行程序時都要重新翻譯整個程序,效率較低,執行速度慢,如QB,不過現在幾乎沒有人再用這種低效的方式的設計語言了.
2.編譯方式是在程序第一次執行前就先執一個全部的翻譯過程,然後每次執行的時候就可以直接執行這個翻譯好的二進制文件了,這樣的程序只需要翻譯一次,效率明顯要高很多,現在的大多數語言都是這種方式,網頁中的asp.net 採用的也是這種方式.

編程語言里 什麼是靜態語言和動態語言 和什麼是編譯語言 和解釋語言通俗點 還有java和C語言屬於哪一種

靜態語言,是固定運行結果的語言,典型的範例就是html編寫的靜態頁面代碼,比如說創建一個表格,在html語言中表格行列數是不能變化和調整的。
動態語言,根據條件的不同,輸出的內容可能不同。例如:編寫網頁的asp語言,可以通過查詢資料庫,生成動態行數的數據表。
編譯語言,一般情況下需要通過編譯環境生成對應的可執行程序或者目標程序,才能夠執行。
解釋語言,在運行時對編碼進行解釋,直接執行。例如asp語言,就是解釋型語言,不需要編譯生成可執行程序。
一般來講,C語言和java都是需要通過編譯生成可執行程序或者目標程序,所以它們都是編譯語言。

⑶ C語言是編譯性語言還是解釋性語言

C語言是編譯性語言

⑷ C語言既可以編譯執行又可以解釋執行嗎 編譯執行怎麼解釋 解釋執行又怎麼解釋

C 語言程序僅可以解釋執行。

解釋程序是將源程序(如BASIC)作為輸入,解釋一句後就提交計算機執行一句,並不形成目標程序。編譯程序是把高級語言(如FORTRAN、COBOL、Pascal、C等)源程序作為輸入,進行翻譯轉換,產生出機器語言的目標程序,然後再讓計算機執行這個目標程序,得到計算結果。

相對於編譯性語言,其優點是可移植性好,只要有解釋器環境,程序就可以在不同的操作系統上運行。

缺點是代碼需要有專門的解釋器,在程序運行時,除要給用戶程序本身分配內存空間外,解釋器也佔用系統資源,所以其運行速度較慢。另外,也很難達到像C、C++那樣操作系統底層操作的目的。

解釋型語言常用於,一是對運行速度要求不高(如一些網頁腳本等)的場合,二是對跨平台(操作系統的兼容性)有要求的場合。

(4)c屬於編譯還是解釋擴展閱讀

1、python和Java語言,專門有一個解釋器能夠直接執行Python程序,每個語句都是執行的時候才翻譯。

2、Python代碼在運行前,會先編譯成中間代碼,每個 .py 文件將被換轉成pyc 文件,pyc 就是一種位元組碼文件,它是與平台無關的中間代碼。不管放在 Windows 還是 Linux 平台都可以執行,運行時將由虛擬機逐行把位元組碼翻譯成目標代碼。

⑸ c語言是解釋型語言嗎

編程語言分為兩大類:1-編譯型語言;2-解釋型語言。之前我們講解過編譯型語言。現在就來講講解釋型語言

同學們可以繼續與翻譯進行類別,來理解「解釋型語言」。之前說過,編譯型語言是雇一個翻譯,將你寫的中文信全篇翻譯成英文,然後交給美國總統閱讀。而解釋型語言則不同,更像是「同聲傳譯」。

也就是說,解釋型語言使用一個翻譯站在你身邊,你寫出一句中文,它就直接翻譯成英文給對方閱讀。實際上,這個「翻譯」是一種虛擬機。所謂虛擬機,也是一種程序,它幫你隨時將編寫的源代碼翻譯成計算機可以理解的機器語言,讓計算機執行命令。而不需要產生中間的機器碼文件。比如,「BASIC」語言就是一種解釋型語言。

比如,你使用BASIC語言,想在屏幕上顯示文本「Hello」。那麼你可以先編寫源代碼文件,比如叫「hello.bas」,然後你可以直接將hello.bas文件送入虛擬機程序。然後虛擬機會直接幫你運行hello.bas(直接逐行解釋你的源代碼文件)。

解釋型語言最大的特點就是不創建中間文件。

解釋型語言的優點

對於不同的系統適應性較好,同樣的源代碼,可以直接運行在不同的系統(當然,前提是在不同系統上安裝好相應的虛擬機)。

解釋型語言的缺點

逐行解釋會導致程序運行速度不如編譯型語言快。可以想像下,你講中文時,說一句中文翻譯翻譯一句(解釋型語言)的速度,顯然比先把演講稿翻譯成全英文稿(編譯型語言)要慢很多。

解釋型語言舉例

屬於解釋型語言的有如下幾種:

Perl
JavaScript
VBScript
AppleScript

⑹ C語言的翻譯方式是編譯方式還是解釋方式

這是一種命名方式,一種縮寫.clearerr=clearerror.因為是文件操作類函數的所以以f開頭(file).fopen=fileopenfclose=fileclose這些都是標准庫,常用的就那幾個,多用幾次就熟悉了.建議看下"駝峰命名法","匈牙利命名法"!

⑺ C/C++,Java,Python誰是編譯型語言,誰是解釋型語言

總的來說,如今編譯型語言、解釋性語言的分界線不再那麼明顯,應該避免把語言簡單歸類為「編譯型」和「解釋型」。
我們最開始說C/C++是編譯型語言,原因是相對於Ruby這樣的解釋性語言,C/C++需要通過編譯器,把源代碼編譯成中間文件(.o和.obj),然後通過連接器和匯編器生成機器碼,即一系列基本操作序列,可以直接讓計算機執行。這些機器碼也就是我們通常的exe文件。
我們以Ruby為例談一下解釋型的語言,程序從源代碼到被計算機執行,也要經歷上述步驟。不同的地方在於,C/C++會把那些從源代碼「變」來的機器碼(即exe文件)保存起來,而Ruby直接將這些生成的基本操作序列(Ruby虛擬機)指令丟給Ruby虛擬機執行然後產生動作了。這就是我們所說的解釋型語言。
所以我們看到的現象是,編譯型語言要先編譯再運行,而解釋性語言直接「運行」源代碼。
回到最開始的問題,如果以是「否保存機器碼為exe文件」為區分,那麼Java和Python都屬於解釋型語言。
但具體來講,Java和Python是有很大不同的。Java代碼從源程序到執行,要經過的過程是:編譯器(javac)把源代碼轉化為位元組碼,然後解釋器(Java.exe)把位元組碼轉換為計算機理解的機器碼來執行,其過程中沒有把「機器碼保存為exe」的行為(這樣講也不完全准確,下面會講到)。其中編譯器和解釋器都是Java虛擬機(JVM)的一部分,由於針對不同的硬體與OS,Java解釋器有所不同,因此可以實現「一次編譯、到處執行」。所以JVM是Java跨平台特性的關鍵所在。
Java虛擬機(JVM)一種用於計算機設備的規范,可用不同的方式(軟體或硬體)加以實現。編譯虛擬機的指令集與編譯微處理器的指令集非常類似。Java虛擬機包括一套位元組碼指令集、一組寄存器、一個棧、一個垃圾回收堆和一個存儲方法域
對於Python,其源代碼到執行也要經過如下過程:源代碼--->位元組碼--->機器碼。跟Java相同的是,其過程中也沒有把「機器碼保存為exe」的行為。與Java不同的是,Python使用的虛擬機是基於其他語言實現的,比如我們一般使用的Python實際為Cpython,也就是其虛擬機由C實現,這個虛擬機負責把Python源碼編譯為位元組碼,再解釋執行。另外,還有Jypython、Ironpython等。

⑻ c++ 解釋還是編譯

編譯是在程序運行之前進行的,詞法分析-語法分析-中間代碼-目標代碼-[優化] 生成了目標代碼,windows下通常是exe文件
解釋是在程序運行時進行的,運行之前沒有目標代碼的生成。所以速度比較慢C++是編譯的,matlab是單句解釋運行的
java是生成了位元組碼,算是中間代碼,然後在java虛擬機上運行

源代碼通過編譯 鏈接 生成目標代碼
等你學過 編譯原理 這么課程你會了解的多些

⑼ 請問C#是編譯型語言還是解釋型語言

c#是解釋型語言,不是編譯型語言。
只要不是"直接編譯成機器指令並直接運行機器指令執行檔"的編譯語言,就屬於解釋語言。
java,c#、vb.net等的源碼先編譯成位元組碼,再由虛擬機「解釋」執行位元組碼。
也屬於解釋語言,jit即時編譯的語言也屬於解釋語言。

⑽ 請問C#是編譯型語言還是解釋型語言

C#是解釋型語言,不是編譯型語言。

只要不是"直接編譯成機器指令並直接運行機器指令執行檔"的編譯語言,就屬於解釋語言。

Java,C#、VB.net等的源碼先編譯成位元組碼,再由虛擬機「解釋」執行位元組碼。
也屬於解釋語言,JIT即時編譯的語言也屬於解釋語言。

現在虛擬機逐漸多樣化,機器指令的硬體相關性逐漸淡化。所以編譯語言和解釋語言的概念越來越少被提到了。

Most so-called interpreted languages use an intermediate representation, which combines compiling and interpreting. In this case, a compiler may output some form of bytecode or threaded code, which is then executed by a bytecode interpreter.
大多數所謂的解釋型語言都採用某種結合編譯和解釋的中間形態。以編譯器輸出某種位元組碼或線程碼,然後由位元組碼解釋器執行。 ---維基網路-解釋型語言條

閱讀全文

與c屬於編譯還是解釋相關的資料

熱點內容
excel能編程嗎 瀏覽:929
android系統框架的介紹 瀏覽:945
無盤系統伺服器如何配置 瀏覽:836
背負貸款如何緩解壓力 瀏覽:82
linux獲取日期時間 瀏覽:881
搬磚問題最合適的演算法 瀏覽:446
小米安卓機密碼忘記了如何解鎖 瀏覽:910
產電plc編程手冊 瀏覽:761
vscodephp 瀏覽:535
阿里雲linux桌面 瀏覽:754
php二維數組搜索 瀏覽:116
ps快捷命令工具箱 瀏覽:253
c4d教程pdf 瀏覽:462
linux集群安裝配置 瀏覽:154
stc單片機介紹 瀏覽:901
如何解壓失戀的人 瀏覽:493
安卓微信滯後怎麼辦 瀏覽:942
手機編程跟電腦編程一樣嗎 瀏覽:624
android代碼規範文檔 瀏覽:99
word如何加密批註 瀏覽:327