㈠ 適合win10系統的c語言編譯器
桌面操作系統
對於當前主流桌面操作系統而言,可使用 VisualC++、GCC以及 LLVM Clang 這三大編譯器。
Visual C++(簡稱 MSVC)只能用於 Windows 操作系統;GCC 和 LLVM Clang除了可用於Windows操作系統之外,主要用於 Unix/Linux操作系統。
像現在很多版本的 Linux 都默認使用 GCC 作為C語言編譯器,而像 FreeBSD、macOS 等系統默認使用 LLVM Clang 編譯器。由於當前 LLVM 項目主要在 Apple 的主推下發展的,所以在 macOS中,Clang 編譯器又被稱為 Apple LLVM 編譯器。
MSVC 編譯器主要用於 Windows 操作系統平台下的應用程序開發,它不開源。用戶可以使用 Visual Studio Community 版本來免費使用它,但是如果要把通過 Visual Studio Community 工具生成出來的應用進行商用,那麼就得好好閱讀一下微軟的許可證和說明書了。
而使用 GCC 與 Clang 編譯器構建出來的應用一般沒有任何限制,程序員可以將應用程序隨意發布和進行商用。
MSVC 編譯器對 C99 標準的支持就十分有限,加之它壓根不支持任何 C11 標准,所以本教程中設計 C11 的代碼例子不會針對 MSVC 進行描述。所幸的是,Visual Studio Community 2017 加入了對 Clang 編譯器的支持,官方稱之為——Clang with Microsoft CodeGen,當前版本基於的是 Clang 3.8。
也就是說,應用於 Visual Studio 集成開發環境中的 Clang 編譯器前端可支持 Clang 編譯器的所有語法特性,而後端生成的代碼則與 MSVC 效果一樣,包括像 long 整數類型在 64 位編譯模式下長度仍然為 4 個位元組,所以各位使用的時候也需要注意。
為了方便描述,本教程後面涉及 Visual Studio 集成開發環境下的 Clang 編譯器簡稱為 VS-Clang 編譯器。
嵌入式系統
而在嵌入式系統方面,可用的C語言編譯器就非常豐富了,比如:
用於 Keil 公司 51 系列單片機的 Keil C51 編譯器;
當前大紅大紫的 Arino 板搭載的開發套件,可用針對 AVR 微控制器的 AVRGCC 編譯器;
ARM 自己出的 ADS(ARM Development Suite)、RVDS(RealView Development Suite)和當前最新的 DS-5 Studio;
DSP 設計商 TI(Texas Instruments)的 CCS(Code Composer Studio);
DSP 設計商 ADI(Analog Devices,Inc.)的 Visual DSP++ 編譯器,等等。
㈡ 如何用notepad++配置VS2015的編譯器
1.用VI 編輯器新建了一個hello1.c的源文件
2.用gcc進行編譯,出現報錯 :stdio.h:No such file or directory
3.上網查了一下,有一種解決方案是在當前目錄下進行編譯,於是我新建了一個wtw/test目錄,在該目錄下新建了一個hello1.c的源文件,但是還是不管用,是用LS顯示目錄下的文件能夠看到hello.1c但是,用which 或者whereis命令時查找不到hello1.c文件。
4嘗試用sudo apt-get install libc6-dev安裝庫文件,還是失敗 :su: apt-get :command not found
該怎麼解決呢 ?我只是想試試用gcc編譯 但是不管是什麼源文件 都是stdio.h:No such file or directory
㈢ vs編譯cv4.5必須要cuda環境嘛
先說一下我的需求:在win10中,顯卡是3070的機器上,使用的IDE是Qt,實現基於open pose的旗語的檢測。說白了就是自己編譯一個能使用cuda加速的一個opencv,利用opencv的dnn模塊的介面實現對深度學習模型的調用。在這里只記錄一個環境配置的過程。
本機環境:win10 RTX3070 Qt 5.9.2 msvc編譯器
下面只記錄比較重要的一些過程,給大家一些參考。
1、第一步,先安裝QT。大部分安裝Qt,就自帶了裡面的mingw編譯器,但是想要編譯能用cuda加速的opencv,我使用mingw編譯器,沒有把opencv編譯成功。我猜大概是mingw搞定不了opencv +cuda的編譯(不確定,猜想)。所以就安裝vs了。肯定需要安裝vs2015及其以上的版本,15,17,19三個版本中,查看了很多資料,了解到應該是2017在編譯opencv中最不容易出現問題。最好是用vs2017。
如果你在安裝QT過程中沒有選擇msvc2017的話,就應該得重新安裝一下了。Qt配置msvc編譯器的教程網路一下就可以。安裝完記得配置一下QT 的環境變數。記住根據自己的Qt安裝位置來配置。然後運行一下Qt能用說明第一步就完成了。
㈣ 怎樣配置Eclipse IDE for C/C++的編譯器
1、安裝JDK,並配置好其環境變數
2、下載並安裝Eclipse IDE for C/C++ Developers,下載後解壓得到一個eclipse目錄,可以直接雙擊其一級子目錄下的"eclipse.exe"運行eclipse IDE,不需要安裝。可以另外設置其工作目錄,即是工程文件等存放位置。
3、下載並安裝MinGW,下載需要比較長的時間,且比較容易下載失敗,耐心等待吧...
4、配置MinGW
(1)環境變數的配置
新建環境變數MINGW_HOME,變數值為mingw安裝目錄,例如D:\mingw
在Path變數的最前面添加:%MINGW_HOME%\bin; (不要漏了最後的分號)
(2)在eclipse IDE中的配置
依次點擊打開「Window>preferences>C/C++>New CDT Project Wizard,在右側,選擇Preferred Toolchains,按下圖中步驟設置Executable(可執行程序)的默認編譯器為MinGW GCC,這樣在新建工程的時候就不需要重復選擇編譯器了,其他工程類型的設置過程類同。
在左側,選擇「Makefile Project」,在右側,選擇Binary Parsers標簽(默認已選中),勾選「PE Windows Parser」,點擊OK保存。(註:此設置過程意味著對所有C/C++工程都將應用此配置,如果你只是想在單個工程中進行配置,可右鍵單擊該項目,並依次選擇「Properties>C/C++ Build>Settings」,在右側選擇「Binary Parsers」標簽,並勾選「PE Windows Parser」即可,此設置過程意味著只對當前選中的工程有效。)
㈤ 新手如何學習編程
熟悉以下關鍵東西,可以邊學邊做,定期訓練,經常思考,長期積累:
1、語法。
2、基礎理論(數學、數據結構、演算法等)。
3、設計方法(編程原則、設計模式、框架設計等)。
4、庫(核心、基礎、UI、擴展、游戲引擎等)。
5、計算機相關(操作系統、網路、圖形學等)。
6、領域知識(游戲設計、網站設計等)。
7、開發工具(編輯器、IDE、自動部署等)。
8、項目管理(進度管理、分工協作、Bug管理、版本控制等)。
最普遍也是最重要的能力:創造力。努力分析並理解好做什麼以及怎麼做。要知道上面那些東西一開始都是不存在的。
具體方法包括:
1、快速閱讀入門教程和書籍,適合學習語言和基礎庫。比如我學Java讀的《Java編程思想》,練習題做過一點,然後學ActionScript就沒讀過書,只讀過Adobe官方文檔《ActionScript 3.0編程》。
2、閱讀庫的文檔、實例、源碼。比如Flash、Flex開發,熟悉官方API很重要,很多細節要具體使用時才注意到,這時候最好做個筆記,雖然我從沒看過我的筆記。
3、做一個自己感興趣或熟悉的小項目,比如我就以黑白棋游戲作為多個語言的試水項目,一樣的邏輯,便於把關注點放在語言特點上。
4、自己動手豐衣足食。廚師有菜譜,程序員可沒菜譜。比如我做游戲,最關鍵的游戲編程知識全部是動手學出來的,很少有專門針對某個業務領域(如游戲)的編程書籍,要麼是入門書,要麼是模式書(如演算法)、理論書(圖形學),很少有書籍教你如何開發一個45度角地圖系統加編輯器的,全靠自己思考,以及看前人的代碼,需要時找些網路資料。關鍵是,可以培養最重要的創造力。
對於演算法和設計模式,可以研讀下,但是關鍵還是靠平時如何使用了。新手勉強不來的。
項目管理方面的,就得靠工作經驗了,多思考多提意見不要只走流程。
㈥ 想學習Linux,gcc編譯器怎麼安裝
先別管安裝,
系統弄好了,先開個終端窗口,給個gcc,看看有執行沒,
大概率是有的呢,
㈦ 怎樣才能學好編程
剛開始學習編程語言,要怎麼去做,動手編寫一個編譯器,學習一下較為底層的編程方式,是一種學習計算機到底是如何工作的非常有效方法。編譯器通常被看作是十分復雜的工程。事實上,編寫一個產品級的編譯器也確實是一個龐大的任務。但是寫一個小巧可用的編譯器卻不是這么困難。
這個秘密是,首先介紹編程入門教程,找到盡可能小的項目,然後想要的功能加入。這種方法也意味著在他那篇著名的文章中提到的「一個編譯器構造的快捷方式」阿卜杜勒阿齊茲Ghuloum說。但是這種方法確實工作。只需要按照第一步操作本文中,可以得到一個真正可用的編譯器。當然,它只能被編譯的編程語言是非常小的子集,但它確實是一個真正的編譯器可用。你可以自由地擴展這個編譯器,然後了解更多,更深的了解。
從某種意義上來說這比寫一個scheme的編譯器要困難一些(因為必須去解析C那復雜的語法),但是在某些方面又很便利(不需要去處理運行時類型)。要寫這樣一個編譯器,只需要從那個可用的最小的編譯器開始。沒有變數,沒有函數調用,沒有額外的依賴,甚至連if語句,循環語句都沒有,一切看起來是那麼簡單。
踏出了編程入門教程第一步,接下去怎麼做就全看自己了。可以按照文章所指導的全部做一遍,然後製作一個更加復雜的編譯器。需要去寫一個更加精巧的語法樹來生成匯編代碼。接下去的幾步分別是:(1)允許返回任意的值(比如,return3; 一些可執行代碼);(2)添加對「非」的支持(比如,return ~1; 一些可執行代碼)。每一個額外的特性都可以教你關於C語言的更多知識,編譯器到底是怎麼執行的,以及世界上其他編寫編譯器的人是如何想的。這是構建 babyc 的方法。Babyc 現在已經擁有了if語句,循環,變數以及最基礎的數據結構。
下面給大家展示一下國內最權威的.net訓練營學習路線圖: