⑴ 解釋型語言和編譯型語言的區別 知乎
編譯型的是創造功能,解釋型是用語句去調用本來存在的有限功能。
⑵ 新手學c++用什麼編譯器比較好,知乎
如果單純學習C,在WINDOWS 7及以下,可以用Borland C++ Builder 6.0,這個軟體很老了,但是IDE設計的比較好,寫代碼時有函數原型的提醒,按住CTRL鍵點擊任何一個量就可以追蹤到定義處,非常適合初學者學習。
至於VC++6.0,差不多吧,只有函數參數的提醒,而且在WINDOWS7下使用會有兼容性提醒(可以忽略)。
再者不怕麻煩,最好是安裝個虛擬機軟體如Oracle VM VirtualBox,然後安裝個ubuntu,桌面版的自帶gcc,根本不用配置,用gedit編寫源代碼,用gcc編譯,而且支持C99,非常強大。
此外,TC也可以考慮,不過TC有的地方不太規范,但好處是絕對靈活,用虛擬機裝個UCDOS,然後安裝TC2.0,學習來說,夠用了,而且2.0版本不對函數有效性進行檢測,
⑶ 如何編譯 linux c c++ 程序 知乎
VS上寫Linux程序
直接寫就好。
不過 問題是 Linux程序你用VS編沒什麼意義啊
還是得用gcc編
這樣 VS就只作為一個編輯器存在。事實上,作為編輯器 VS並不算太好。
還不如用專門的編輯器 比如source Insight一類的 或者UE
Eclipse都比VS強
⑷ 學習java用什麼編譯器好 知乎
用記事本也是一個好選擇,但是嫌麻煩。推薦你使用JCreator或者BlueJ,簡單又好用,又不用麻煩去搞環境變數。
Core Java - Java核心技術
Thinking in Java - Java編程思想
Head First Java
程序員修煉之道-從小工到專家
都不錯
⑸ 怎麼讓gcc編譯出來的so文件不依賴於libgcc
給gcc的鏈接器加上-static-libstdc++ -static-libgcc -static參數,讓它靜態鏈接libgcc,前提是不使用其它第三方動態庫,如boost。如果還用第三方庫,參考知乎上一篇「在Linux下,如何強制讓GCC靜態鏈接」文章
⑹ windows是怎麼編譯出來的知乎
可以的!只要先在cygwin編譯一個target=i686-pc-linux的gcc,再用這個gcc就可以編譯出linux格式的可執行文件了
⑺ 如何評價同濟大學計算機系推 知乎
作者:王天祺
來源:知乎
如何評價同濟大學計組教學組的教學態度?
CS的同志們學習一下FPGA其實挺有幫助的,可以幫助理解底層硬體。著名課程CSAPP裡面都有專門一章講了如何硬體搭一個CPU。
CS的同志們對於FPGA的抵觸也是可以理解的,畢竟RTL級的設計思想跟列位寫軟體時的那套分支、跳轉、循環的思路有本質的區別,更坑的是Verilog長得還挺像C語言,帶了實驗室這幾屆師弟,感覺好多新人入坑時都被坑的挺慘的。大家都花了好大力氣才把思路從軟體那邊扭到了硬體。
我一直覺得就是大家原先的軟體思維造成了入坑FPGA時的不適。為此,當年我還做了一個實驗,我姥爺做了一輩子電話交換機,從模擬時代和分立器件時代一路走來,但是從來沒接觸過FPGA,沒接觸過軟體,沒用過電腦。我發現教他Verilog和FPGA的時候就很容易(快九十歲的人,接受起來比實驗室的小朋友都快),他表示Verilog跟畫電路圖是一樣的嘛,不過就是用文字表述的電路圖而已;FPGA這東西也就是塊萬用板,照著設計連線就好了。
所以後來再教小朋友學FPGA的時候,我都推薦他們先去把數字電路書的組合、時序和存儲器三章看明白,而不是礽本語法書讓他們啃,感覺大家接受度會好很多。
FPGA的實驗其實被廣大CS眾抵觸,一條最重要的原因還是在於綜合實現太慢,debug效率低。大點兒的設計改根信號重跑一遍就倆小時過去了。。。然後發現改錯了,然後又得搭上倆小時。(比如當你發現我開始在知乎上無聊地答題,就證明我在等綜合)。哪裡比得上寫軟體時秒編譯的爽快。debug時對著滿屏波形圖看得眼睛疼,哪比得上軟體打log看著清爽直觀。以上這些就真的沒辦法了,目前EDA技術也就只能做到這個程度了。讓CS的同學們體驗一下EE的痛苦,就當體驗生活了吧。綜合、布局布線這類問題也算CS領域的經典課題,還望列位CS的同學在互聯網浪潮之巔沖浪之餘也能有人推進下EDA技術的發展,解救EE的同學們於水火。
⑻ 有沒有可能寫出c++反編譯器知乎
C++反匯編軟體現成的就有啊,靜態反匯編軟體比較著名的就是IDA Pro,動態的是ollydbg這個軟體。如果你像自己編寫一個也可以,需要知道位元組碼和匯編的對應關系、然後一些調試器的編寫的知識,不過自己編寫反編譯軟體的話針對一些簡單的程序還可以,如果遇到加過殼的程序,處理起來就比較麻煩了。
⑼ 中文編碼是由操作系統還是編譯器決定 知乎
說得更加准確一些,漢字編碼不是由編譯器決定的。漢字信息處理是由操作系統中的處理漢字部分的那部分功能決定的。比如說:最早的計算機操作系統都是西文的,根本就不具備漢字處理功能(漢字的輸入、顯示、列印等),如果要想使計算機操作系統能夠具備漢字處理功能,就必須在現有的西文操作系統中添加漢字處理模塊才行。西文的ASCII碼的高位為 0,漢字內碼的高位為 1 。