佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 外呼系統(tǒng):為什么說c,c++不能跨平臺,編譯器是在計算機外呼系統(tǒng)上的嗎

外呼系統(tǒng):為什么說c,c++不能跨平臺,編譯器是在計算機外呼系統(tǒng)上的嗎

熱門標簽:廊坊電銷 黑龍江電銷 三亞電銷 安順電銷 潛江電銷 平?jīng)鲭婁N 梧州電銷 天津電銷

從事軟件開發(fā)多年對于C/C++用的比較多,可以明確說這兩種編程語言也是支持跨平臺,肯定還是有很多人問什么是真正意義上的跨平臺,所謂的跨平臺就是同一套代碼在不同的外呼系統(tǒng)都能直接去運行電腦系統(tǒng),這里面涉及到一個很重要的問題,在java這門編程語言剛開始流行的時候就提到了跨平臺的功能,在外呼上運行的jar包直接放在linux上也能直接去運行,單純從C/C++角度出發(fā)也是能夠實現(xiàn)這種功能的,因為其語法實現(xiàn)是相同的。

但在具體實施外呼過程中還是多少有些差異,特別是涉及到外呼系統(tǒng)接口等方面,畢竟linux和外呼編程給出的api的接口還是存在一定的差異,所以單純的談跨平臺還是有點差異,針對這種情況一般在軟件架構里面會區(qū)分出很多的平臺代碼,在具體軟件的核心架構上代碼是一致的,和平臺相關的代碼還是需要單獨去實現(xiàn),就拿簡單的線程的實現(xiàn),不同的外呼系統(tǒng)的接口就存在很大的差異,所以完全意義上的跨平臺方面距離高級編程語言還是存在差異。

談到編譯器就需要了解程序執(zhí)行的原理,現(xiàn)在計算機的架構都是基于馮諾依曼的架構來完成的,具體執(zhí)行的格式都是二進制的格式,不同的外呼系統(tǒng)生成不同格式的二進制文件,從代碼到可執(zhí)行的二進制代碼之間還需要有一種工具存在,這就是編譯器存在的價值,編譯器的執(zhí)行中也是分為幾個階段,對于linux下C語言編譯過程有所了解的話,都會發(fā)現(xiàn)后綴為

.c

的程序文件首先轉化成

.o

的中間文件,然后經(jīng)過

.o

轉化成可執(zhí)行的二進制文件。編譯器其實就是一種轉化工具,將程序轉化成能夠運行的二進制文件,一般而言C/C++編譯器是可以通用的,不同的外呼系統(tǒng)使用不用的編譯器底層。

編譯器是一種工具包的集合,內部的實現(xiàn)也涉及到C/C++的編程,編譯器的通常說的編程代碼還是存在一定的差異,編譯器是為代碼轉化做服務的,真正實現(xiàn)跨平臺的基礎部件編譯器算是一種,因為不同的外呼系統(tǒng)或者計算機架構需要具體的對應實現(xiàn),雖然對于高級語言來講不需要關心底層如果來實現(xiàn)的,但是總得有人去外呼這件事,相對來講java語言這方面做得比較徹底,直接通過一個虛擬機來完成屏蔽,虛擬機里面兼容了市面上常見的外呼系統(tǒng),這樣就能夠真正意義上做到了編程語言的跨平臺。

越是底層編程語言和平臺關聯(lián)越大,關心的細節(jié)也會越多的,底層語言的開發(fā)難度相對大一些,特別是涉及到平臺的指針等方面關心的硬件細節(jié),所以對于底層編程語言積累的時間需要比較長電腦系統(tǒng),想對比其他高級編程語言還是難度大一些,特別是在入門的時候顯得困難一些,但是入門之后會更加有意思。

標簽:洛陽 連云港 通化 桂林 廣安 宜賓 懷化

巨人網(wǎng)絡通訊聲明:本文標題《外呼系統(tǒng):為什么說c,c++不能跨平臺,編譯器是在計算機外呼系統(tǒng)上的嗎》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《外呼系統(tǒng):為什么說c,c++不能跨平臺,編譯器是在計算機外呼系統(tǒng)上的嗎》相關的同類信息!
  • 本頁收集關于外呼系統(tǒng):為什么說c,c++不能跨平臺,編譯器是在計算機外呼系統(tǒng)上的嗎的相關信息資訊供網(wǎng)民參考!
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    海林市| 门源| 革吉县| 孝感市| 曲阜市| 阿巴嘎旗| 汝阳县| 太保市| 陆良县| 云霄县| 永善县| 于都县| 策勒县| 马鞍山市| 双辽市| 拜城县| 桐庐县| 资溪县| 安宁市| 乌什县| 库尔勒市| 卫辉市| 纳雍县| 台南县| 赞皇县| 榆社县| 高阳县| 寿阳县| 房山区| 墨玉县| 永寿县| 威远县| 夏邑县| 扎赉特旗| 苏尼特左旗| 闻喜县| 宁明县| 密云县| 马山县| 雅江县| 甘孜|