Re: [問題] C到底具不具有移植性?
※ 引述《alair99.bbs@ptt.cc (製造不在場證明)》之銘言:
> 如題
> 我印象中好像是有 但是我的朋友又說沒有
> 我認為C是蠻原始的程式語言
> 所以他應該會在所有機器上都可以執行才對
> 是我的觀念錯誤嗎?
> JAVA雖然比較高等
> 但是他的移植性是透過JVM來達成的
> C應該不是這樣吧@@?
> 一些鳥問題 幫解答一下 感恩~"~
C 的可攜性是藉由語言標準而來的,
拿到任何有 C compiler 的平台上重新編譯後就可以執行,
事實上,
很久之前就有 cross-compiler 可以用,
所以就算目的平台沒有 C compiler 也沒問題。
Java 的跨平台性是由 Java VM 擔任平台的角色來達成的,
經過編譯的 Java 程式可以拿到任何 Java VM 上去執行。
事實上 C 強調的是可攜性,
Java 強調的是跨平台性,
兩者其實是不同的意思,
一個是到處都能重新編譯,
一個是編譯好的東西到處都可以執行。
--
Name: Tseng, Ling-hua E-mail Address: uranus@it.muds.net
School: National Tsing Hua University Department: Computer Science
Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design
Researching: Undecided
Homepage: https://it.muds.net/~uranus
--
╔═══╗ ┼────────────────────────╮
║狂狷 ║ │* Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮
║ 年少║ ┼╮ < IP:140.119.164.16 > ╰─╮
╚╦═╦╝ ╰ * From:218-160-190-1.dynamic.hinet.net
─╨─╨─ KGBBS ─ ◎ 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩 ◎
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章