編程開發
GCC,GNU組織開發的開源免費的編譯器
MinGW,Windows操作系統下的GCC
Clang,開源的BSD協議的基於LLVM的編譯器
Visual C++ :: cl.exe,Microsoft VC++自帶的編譯器 CodeBlocks,開源免費的C/C++ IDE
CodeLite,開源、跨平台的C/C++集成開發環境
Orwell Dev-C++,可移植的C/C++IDE
C-Free
Light Table
Visual Stdio系列 起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。
K&R C主要介紹了以下特色:
結構體(struct)類型
長整數(long int)類型
無符號整數(unsigned int)類型
把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產生混淆。
即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最 准要求,許多老舊的編譯器仍然運行K&R C的標准。 1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。
1983年,美國國家標准協會(ANSI)成立了一個委員會X3J11,來制定 C語言標准。
1989年,美國國家標准協會(ANSI)通過了C語言標准,被稱為ANSI X3.159-1989 Programming Language C。因為這個標準是1989年通過的,所以一般簡稱C89標准。有些人也簡稱ANSI C,因為這個標準是美國國家標准協會(ANSI)發布的。
1990年,國際標准化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標准,命名為ISO/IEC 9899:1990 - Programming languages -- C 。因為此標準是在1990年發布的,所以有些人把簡稱作C90標准。不過大多數人依然稱之為C89標准,因為此標准與ANSI C89標准完全等同。
1994年,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994 ,有些人簡稱為C94標准。
1995年,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity ,有些人簡稱為C95標准。 1999年1月,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C語言的新標准,名叫ISO/IEC 9899:1999 - Programming languages -- C ,簡稱C99標准。這是C語言的第二個官方標准。
在C99中包括的特性有: 增加了對編譯器的限制,比如源程序每行要求至少支持到 4095 位元組,變數名函數名的要求支持到 63 位元組(extern 要求支持到 31)。 增強了預處理功能。例如: 宏支持取可變參數 #define Macro(...) __VA_ARGS__ 使用宏的時候,允許省略參數,被省略的參數會被擴展成空串。 支持 // 開頭的單行注釋(這個特性實際上在C89的很多編譯器上已經被支持了) 增加了新關鍵字 restrict, inline, _Complex, _Imaginary, _Bool 支持 long long, long double _Complex, float _Complex 等類型 支持不定長的數組,即數組長度可以在運行時決定,比如利用變數作為數組長度。聲明時使用 int a[var] 的形式。不過考慮到效率和實現,不定長數組不能用在全局,或 struct 與 union 里。 變數聲明不必放在語句塊的開頭,for 語句提倡寫成 for(int i=0;i<100;++i) 的形式,即i 只在 for 語句塊內部有效。 允許採用(type_name){xx,xx,xx} 類似於 C++ 的構造函數的形式構造匿名的結構體。 復合字面量:初始化結構的時候允許對特定的元素賦值,形式為:
struct test{int a[3],b;} foo[] = { [0].a = {1}, [1].a = 2 }; struct test{int a, b, c, d;} foo = { .a = 1, .c = 3, 4, .b = 5 }; // 3,4 是對 .c,.d 賦值的 格式化字元串中,利用 u 支持 unicode 的字元。 支持 16 進制的浮點數的描述。 printf scanf 的格式化串增加了對 long long int 類型的支持。 浮點數的內部數據描述支持了新標准,可以使用 #pragma 編譯器指令指定。 除了已有的 __line__ __file__ 以外,增加了 __func__ 得到當前的函數名。 允許編譯器化簡非常數的表達式。 修改了 /% 處理負數時的定義,這樣可以給出明確的結果,例如在C89中-22 / 7 = -3, -22% 7 = -1,也可以-22 / 7= -4, -22% 7 = 6。 而C99中明確為 -22 / 7 = -3, -22% 7 = -1,只有一種結果。 取消了函數返回類型默認為 int 的規定。 允許 struct 定義的最後一個數組不指定其長度,寫做 [](flexible array member)。 const const int i 將被當作 const int i 處理。 增加和修改了一些標准頭文件,比如定義 bool 的 <stdbool.h> ,定義一些標准長度的 int 的 <inttypes.h> ,定義復數的 <complex.h> ,定義寬字元的 <wctype.h> ,類似於泛型的數學函數 <tgmath.h>, 浮點數相關的 <fenv.h>。 在<stdarg.h> 增加了 va_ 用於復制 ... 的參數。里增加了 struct tmx ,對 struct tm 做了擴展。 輸入輸出對寬字元以及長整數等做了相應的支持。 GCC和其它一些商業編譯器支持C99的大部分特性。 2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C語言的新標准,名叫ISO/IEC 9899:2011 - Information technology -- Programming languages -- C ,簡稱C11標准,原名C1X。這是C語言的第三個官方標准,也是C語言的最新標准。
新的標准提高了對C++的兼容性,並增加了一些新的特性。這些新特性包括: 對齊處理(Alignment)的標准化(包括_Alignas標志符,alignof運算符, aligned_alloc函數以及<stdalign.h>頭文件。 _Noreturn 函數標記,類似於 gcc 的 __attribute__((noreturn))。 _Generic 關鍵字。 多線程(Multithreading)支持,包括: _Thread_local存儲類型標識符,<threads.h>頭文件,裡麵包含了線程的創建和管理函數。 _Atomic類型修飾符和<stdatomic.h>頭文件。 增強的Unicode的支持。基於C Unicode技術報告ISO/IEC TR 19769:2004,增強了對Unicode的支持。包括為UTF-16/UTF-32編碼增加了char16_t和char32_t數據類型,提供了包含unicode字元串轉換函數的頭文件<uchar.h>. 刪除了 gets() 函數,使用一個新的更安全的函數gets_s()替代。 增加了邊界檢查函數介面,定義了新的安全的函數,例如 fopen_s(),strcat_s() 等等。 增加了更多浮點處理宏。 匿名結構體/聯合體支持。這個在gcc早已存在,C11將其引入標准。 靜態斷言(static assertions),_Static_assert(),在解釋 #if 和 #error 之後被處理。 新的 fopen() 模式,(「…x」)。類似 POSIX 中的 O_CREAT|O_EXCL,在文件鎖中比較常用。 新增 quick_exit() 函數作為第三種終止程序的方式。當 exit()失敗時可以做最少的清理工作。
『貳』 電腦編程和軟體開發一樣么
你好:
電腦編程和軟體開發。
如果你想學這個,我還是見意你讀大學。
利用的對編程方面的興趣。
到大學里,系統的學習這方面的知識。
需然外面好多地方,宣傳3個月包學會、什麼什麼系統學習。
但不會全面。
這樣說吧,你用三個月,學習一門語言。
但大學里,你會用3年時間,系統的學習所有語言的基礎。
編程語言有C、C#、JAVA、PHP、HTML、ASP等等。
你要用多少時間去系統學習?
需然很多人說,只要學會一門,第二門就很快。
但學院有一個外面沒的有條件,就是專心。
你可以安靜的學習會所有語言的基礎,不用分心。
可以上學的時候,不要想外面的世界。
因為你到外面的世界裡,只會想學院。
『叄』 如何學習編程開發
學習C語言最好的書籍:《C語言程序設計:現代方法》(第二版)
推薦理由:該書無論是對C語言整體的把握,還是對語言細節的解釋都非常的詳細到位,另外這本書里介紹了比較現代的C語言程序設計風格,有助於幫你養成良好的編程習慣及規范。
C語言聖經:《C程序設計語言》(第二版)
推薦理由:這本書是C語言最經典的書籍,然而並不推薦你初學就看,這本書奇薄無比,但是書中討論的問題多是比較底層的話題,初學者看容易頭暈,有人專門為該書編寫有習題冊,可以一起購買。
其它推薦書籍:
《C專家編程》《C陷阱與缺陷》《你必須知道的495個C語言問題》
另外還有幾點你需要知道的問題:
1)C語言是屬於高級語言里最低級的(並不是最簡單的,恰恰相反,C語言語法雖精煉簡單,但非常難學,難學的理由馬上就講),如果你是想很快上手編寫一些看得見摸得著的軟體,不建議你學C語言。
2)光學C語言,編程是遠遠不夠的,之前說過C比較「低級」,是因為如果你想用C做東西,很多事情必須要自己動手來做,最起碼你要會自己組織數據,也就是學習「數據結構」課程(數據結構課程你也完全可以自學,先修知識已經足夠了)。
3)不要去看大學里通用的課本即譚浩強老師的《C程序設計語言》,這本是垃圾,你不應該允許它出現在你的書架上。
4)如果學習C語言,不要總是想著去用它做一些帶窗口的軟體,C往往不是用來干這個的,C是用於系統級編程的。
5)光看書沒用,必須動手去編程,親自動手編程的重要性大於看書10倍,做課後習題是一個很好的習慣(不帶誇張的)。
6)如果有機會,建議參加青少年的信息學競賽,會對你數據結構,離散數學,演算法等能力得到很大的鍛煉。
『肆』 怎樣學習編程開發
學習編程是一件好事,不要認為編程很難,其實它並不難,不過之前你得先了解你學習編程的目的是什麼?這個很重要,因為目的決定你的發展方向。目前對於編程有很多種編程語言以及相對應的開發軟體,根據你的情況選一種語言進行專業學習,不要盲亂學習。編程是一種融匯貫通的東西,學會基礎到後邊就越來越簡單了。而且可以向多種語言發展。因為畢竟世上沒有永遠不過時的東西嘛!下面說明一些常用的編程語言。
C語言 是一種可移植性和多系統平台的編程語言
JAVA 是一種功能強大可移植性強的開發語言
HTML 是一種超文本標記語言
Java Script 是一種基於客戶端的腳本語言
程序語言,顧名思義就是一種語言,是用於交流的,程序就是計算機的語言和人類語言的翻譯者,做一個程序員就是要把人類世界的問題用計算機的方法去解決和展現,可是因為種種原因,大多數人在如何學好語言,如何學好開發平台上疲於奔命,到頭來你只會敲寫代碼。如果想做一個合格的程序員,C++、JAVA、sql、都是一定要學的,另外,不要去學你喜歡的,也不要去費勁腦子想該學什麼,看看IT界,IT市場需要什麼,你就學什麼。
新手學編程要從根本出發
從理論上來說,需要廣泛的閱讀,了解演算法的博大精深和計算機的基本理論。
從實踐上來說,需要有廣泛的練習,練習的廣泛在於練習不同的內容。
然後就是創新精神和數學思維能力,這些都是需要培養的。
基礎要打好
學編程要具備一定的基礎,總結之有以下幾方面:
(1)數學基礎 、從計算機發展和應用的歷史來看計算機的數學模型和體系結構等都是有數學家提出的,最早的計算機也是為數值計算而設計的。因此,要學好計算機就要有一定的數學基礎,出學者有高中水平就差不多了。
(2)邏輯思維能力的培養 、學程序設計要有一定的邏輯思維能力,「思維能力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。因此在學習編程的過程中,我們不必等到什麼都完全明白了才去動手實踐,只要明白了大概,就要敢於自己動手去體驗。誰都有第一次。有些問題只有通過實踐後才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
(3)選擇一種合適的入門語言、 面對各種各樣的語言,應按什麼樣的順序學呢?程序設計工具不外乎如下幾類:
1.本地開發應用軟體開發的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;資料庫開發工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。
2.跨平台開發開發工具如 Java 等。
3.網路開發對客戶端開發工具如:Java Script 等;對伺服器開發工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環境下幾種開發工具中 VB 法簡單並容易理解,界面設計是可設化的,易學、易用。選 VB 作為入門的方向對出學者是較為適合的。 (但現在已經過時)
培養好的編程習慣
編程入門不難,但入門後不斷學習是十分重要的,相對來說較為漫長。在此期間要注意養成一些良好的編程習慣。編程風格的好壞很大程度影響程序質量。良好的編程風格可以使程序結構清晰合理,且使程序代碼便於維護。如代碼的縮進編排、變數命令規則的一致性、代碼的注釋等。
多問多學習
掌握編程思想必須在編程實際工作中去實踐和體會。編程起步階段要經常自己動手設計程序,具體設計時不要拘泥於固定的思維方式,遇到問題要多想幾種解決的方案。這就要多交流,各人的思維方式不同、角度各異,各有高招,通過交流可不斷吸收別人的長處,豐富編程實踐,幫助自己提高水平。親自動手進行程序設計是創造性思維應用的體現,也是培養邏輯思維的好方法。
總結
1、先照書上的題目寫,題目的設計是有道理的鞏固基礎知識。
2、找數學題,寫個小程序解決,熟悉演算法和基礎函數。
3、自己出題目,小一點的,如自編資源管理器、自編寫字板之類,練習WINDOWS下的編程。
4、結合身邊的事,找個中等課題,或看別人的程序,自已想辦法實現。
5.把教材中的例子,自己仿照著寫一遍,上機運行,看結果.要知道,任何產品都是有例子的,有機結合或仿照。
6.從自己熟悉的事情入手,如成績統計,編制一段程序,完成一個功能.然後再完善。
7.要反復破壞代碼,從破壞中尋找代碼的規律。
8.必須經常反復上機練習。
編程是要用計算機能夠識別的語言讓計算機去運行,現在所說的語言多指高級語言
『伍』 什麼是編程開發啊,編程開發有什麼用嗎編程開發怎麼學啊
建議你買本《
程序員
》看看。
編程就是編寫
程序
,俗稱寫
代碼
,
計算機
的
軟體
,都是編程實現的。
這開發嘛,最好進個培訓班,再進個公司,有個機會慢慢學
『陸』 編程就是寫軟體嗎
編程是編定程序的中文簡稱,就是讓計算機代為解決某個問題,對某個計算體系規定一定的運算方式,使計算體系按照該計算方式運行,並最終得到相應結果的過程。
為了使計算機能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是編程。
(6)編程開發擴展閱讀
可視化編程也越來越重要,所謂的可視化程序設計和Visual Basic或Visual C++並不同,支持可視化程序設計的IDE可以讓開發人員直接移動程序單元來建立流程圖和結構圖,然後直接做編譯或解釋,這一類的流程圖通常是以UML為基礎。
這樣的界面因為樂高的Mindstorms開始普及,一些公司也開始透過瀏覽器Mozilla和分布式程序設計(LabVIEW)往這方面努力。從1980年代開始,第一個可視化程序設計系統—Max,就是以類比合成器的設計為榜樣,同時被用來開發即時音樂演出軟體。
這種方法也被用在專業軟體,例如Openlab,這類的使用者需要完整程序設計語言的彈性,並不想要傳統的學習曲線。
『柒』 程序員入門:如何自學編程
1、選定方向
編程的世界是多元紛繁的,大的方向就分前端開發、後端開發、移動開發、雲計算、數據處理、智能硬體、物聯網、虛擬現實等等,光編程語言都幾十種。如果沒有做過功課,貿然進入只會分分鍾懵逼。所以最好是根據自己的興趣愛好再結合市場前景,先選定一個方向,再選擇一門語言,然後頭也不回的深深扎進去。
2、優化學習方式
做好筆記,記錄經驗,我們大多數人並沒有過目不忘的神技,很多時候我們學了也不一定馬上掌握,需要過後花時間慢慢領悟,而且還有忘掉的風險,所以對於重要的知識點都要做好筆記。
3、多看官方文檔,外文資料
互聯網是一個更新迭代很快的行業,所有編程語言都會不斷的更新新功能和修復舊Bug,網上查的資料很有可能是舊的解決方案,現在已經不適用了。所以最好最快的方法就是查看官方文檔。
4、動手做項目
我們學習編程的最終目的就是用所學的做出具有一定功能的項目,而做項目又是最好的學習和鞏固知識的方式。如果前期能力不足就先做一些簡單的功能模塊,一步一步慢慢來,不要一開始就要實現各種酷炫炸天功能,遇到不會的就在網上查, 現在互聯網這么發達,獲取資源也及其方便。
『捌』 怎麼樣學編程開發
很多人都說最好通過C入門,但是我自身經驗告訴我,最好先從一門腳本語言入門,如我的入門是通過PHP。
一開始接觸C語言,老是對著一個黑洞洞的框,容易使人喪失興趣。這些黑框和我們常見的QQ、Office等桌面程序相差實在太遠了。而且往往在初學的時候沒有人告訴我們控制台應用和圖形界面的應用之間的關系。如果對Web感興趣可以先學點基礎的HTML和CSS雖然這在嚴格意義上不算是編程語言,但是卻可以在一開始讓你做出一個可以看的到的界面,而且掌握基礎還是很簡單的,然後在學點後台開發語言,我推薦PHP或者python。
記住,新手最重要的是保持熱情!
學習一段時間之後可以自己嘗試做一個簡單的留言板,別小看這個老土的小東西,這個可是能讓你立刻充滿成就感。而如果你一開始就上手C這樣的成就感就需要更久才能獲得,而往往很多新手都躺在了前進的路上。然後,可以在留言板的基礎上做出一個簡單的博客系統。
記住一定要在每一階段都做出一個看上去"正常"的東西,而不是一堆代碼一執行出來一行行字元那種。這也是我推薦學習HTML和CSS的原因,因為這可以讓你簡單地搭建一個擁有用戶界面的程序。
當你把這些都做完了,如果感到對編程還是有很大興趣,而且感到自己在漸漸地從心底里喜歡上了編程,那麼你再面對那些黑框的時候,就會感覺好很多,而且感到自己真的很酷,你會喜歡把自己想成電影里的黑客。
至於說演算法數據結構,等有了興趣,需要這些知識了,再去慢慢學習,都不會是障礙,而且會變得有趣許多。但是一開始沒有任何程序基礎,就給你學這些,只能使你迷糊,根本不了解這又什麼用。這也是我討厭現在的大學教育的一個方面,完全違背認知規律。先給你講一大堆理論,不告訴你為什麼,有什麼用,讓人感到厭惡,但當後來我們真正需要了,卻也記不得了,只能從頭再學。
最後,我還是要補充一下,對於新接觸編程的童鞋,或許保持興趣是最重要的,但是在你對編程有一定了解之後,你會發現自己還有很多困惑,這時候就需要惡補基礎知識了,對底層了解的越清楚越有助於你消除困惑和對編程更深層的理解。