C語言和C 的區別

2021-03-27 17:59:03 字數 4889 閱讀 9124

1樓:給i畫餅充飢

c與c++的最大區別:在於它們的用於解決問題的思想方法不一樣。之所以說c++比c更先進,是因為「 設計這個概念已經被融入到c++之中 」,而就語言本身而言,在c中更多的是演算法的概念。

那麼是不是c就不重要了,錯!演算法是程式設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,「c加上好的設計」也能寫出非常好的東西。

1,全新的程式程式思維,c語言是程序導向的,而c++是物件導向的。

2,c語言有標準的函式庫,它們鬆散的,只是把功能相同的函式放在一個標頭檔案中;而c++對於大多數的函式都是有整合的很緊密,特別是c語言中沒有的c++中的api是對window系統的大多數api有機的組合,是一個集體。但你也可能單獨呼叫api。

3,特別是c++中的圖形處理,它和語言的圖形有很大的區別。c語言中的圖形處理函式基本上是不能用在中c++中的。c語言標準中不包括圖形處理。

4,c和c++中都有結構的概念,但是在c語言中結構只有成員變數,而沒成員方法,而在c++中結構中,它可以有自己的成員變數和成員函式。但是在c語言中結構的成員是公共的,什麼想訪問它的都可以訪問;而在vc++中它沒有加限定符的為私有的。

5,c語言可以寫很多方面的程式,但是c++可以寫得更多更好,c++可以寫基於dosr程式,寫dll,寫控制元件,寫系統。

2樓:匿名使用者

c語言是c++語言的一個子集。

c++語言包含了c語言的全部詞法和語法的內容,同時它增加了物件導向程式設計語言所必備的內容。

c為程序導向的語言,c++為物件導向的語言。

c++語言源程式中比c語言多一種資料型別-----類,也就是多一種變數-----物件。

3樓:匿名使用者

1、「::」類作用域操作符。「::」指明瞭成員函式所屬的類。如:m::f(s)就表示f(s)是類m的成員函式。

2、->和 .實現的功能是一樣的,都是訪問類的成員變數或成員函式,. 用於普通變數操作,->只能用於指標變數操作。

如:若a為一指向物件的指標,a->f(s)就表示呼叫a所指的物件中的成員函式f(s)。

4樓:匿名使用者

區別很多,暫列10點。

1,程式思維。c語言

是程序導向的,而c++是物件導向的。

2,函式。c語言有標準的函式庫,它們鬆散的,只是把功能相同的函式放在一個標頭檔案中;而c++對於大多數的函式都是有整合的很緊密,特別是c語言中沒有的c++中的api是對window系統的大多數api有機的組合,是一個集體。但你也可能單獨呼叫api。

3,圖形處理。c++中的圖形處理,和c語言的圖形有很大的區別。c語言中的圖形處理函式基本上是不能用在中c++中的。c語言標準中不包括圖形處理。

4,結構。c語言和c++中都有結構的概念,但是在c語言中結構只有成員變數,而沒成員方法,而在c++中結構中,它可以有自己的成員變數和成員函式。但是在c語言中結構的成員是公共的,什麼想訪問它的都可以訪問;而在vc++中它沒有加限定符的為私有的。

5,寫程式的應用範圍。c語言可以寫很多方面的程式,但是c++可以寫得更多更好,c++可以寫基於dosr程式,寫dll,寫控制元件,寫系統。

6,檔案的組織。c語言對程式的檔案的組織是鬆散的,幾乎是全要程式處理;而c++對檔案的組織是以工程,各檔案分類明確。

7,智慧化。c++中的ide很智慧,和vb一樣,有的功能可能比vb還強;c語言在這方面不能看。

8,自動生成。c語言沒有「推測」功能,不自動生成程式;c++可以「推測」然後自動生成「你想要」的程式結構,大大節省程式設計時間。有很多可用的工具如加入mfc中的類的時候,加入變數的時候等等。

9,附加工具。c語言沒什麼附加工具;c++中的附加工具也有很多,可以進行系統的分析,可以檢視api、可以檢視控制元件。

10,c++除錯功能強大,並且方法多樣。

綜上,c++是c語言的升級,比c語言功能更多、使用更方便。

5樓:水瓶蕭兮

這兩個符號是關係運算子,兩個符號的代表的含義不同。

==的名稱是等於,例如a==b,當a等於b時返回真,否者返回假。

!=的名稱是不等於,例如a!=b,當a不等於b時返回真,否者返回假。

關係運算子的值只能是0或1。關係運算子的值為真時,結果值都為1。關係運算子的值為假時,結果值都為0。

擴充套件資料

其他的關係運算子

"<"小於,例如a"<=" 小於等於,例如a<=b,功能是a小於等於b時返回真;否則返回假。

」>「的名稱大於,例如a>b,功能是a大於b時返回真;否則返回假。

」>=「的名稱大於等於,例如a>=b,能是a大於等於b時返回真;否則返回假。

上面4中關係運算子的先級別相同,==和!=運算子的級別相同,前四種級別高於後兩種級別。關係運算子的優先順序低於算術運算子。關係運算子的優先順序高於賦值運算子。

6樓:金魚

c與c++的區別:

1. c是一個結構化語言,它的重點在於演算法和資料結構。c程式的設計首要考慮的是 如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程 (事務)控制)。

2. 對於c++,首要考慮的是如何構造一個物件模型,讓這個模型能夠契合與之對應 的問題域,這樣就可以通過獲取物件的狀態資訊得到輸出或實現過程(事務)控 制。

所以c與c++的最大區別在於它們的用於解決問題的思想方法不一樣。之所以說c++比c更先進,是因為「 設計這個概念已經被融入到c++之中 」,而就語言本身而言,在c中更多的是演算法的概念。那麼是不是c就不重要了,錯!

演算法是程式設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,「c加上好的設計」也能寫出非常好的東西。

對語言本身而言,c是c++的子集,那麼是什麼樣的一個子集?從上文可以看出, c實現了c++中過程化控制及其它相關功能,而在c++中的c(我稱它為「c+」),相對於原來的c還有所加強,引入了過載、行內函數、異常處理等等玩藝兒,c++更是拓展了物件導向設計的內容,如類、繼承、虛擬函式、模板和包容器類等等。

c++在歷史上曾經是c的擴充套件,不過現在兩個都各自有發展,所以現在的c++與現在的c沒有誰是誰的擴充套件的關係。

現在有人說c和c++是大熊貓和小熊貓的關係,也就是說只是名字相近——這多少有欠公允。不過c和c++的確是有巨大區別的,c語言簡單有效,但處理大問題就很麻煩像把左***;而c++則簡直是一輛坦克,功能齊備,但更肥大——無非都是兵器而已。至於說學習上c是c++的基礎,倒是一大誤區,槍械和火炮長得可能有點像,甚至也有點淵源,但終究全不是一回事。

先學c,後學c++有好處也有壞處,應該說至今仍有爭論。

我的看法是,如果是做應用軟體一類的程式設計,就不應該先學c,而且應該在初學時少接觸c的舊式程式設計風格,而是把大部分精力放在c++的標準庫(包括基於stl的程式設計,這方面國內一般的教材最欠缺),以及基於物件和麵向物件的程式設計上。這是因為c++的這些應用從程式設計方式到**風格都與c語言大相徑庭,初學養成c式的程式設計習慣就很改掉,反而限制對類和泛型程式設計的理解。

如果是想接觸比較底層的東西,以後做軟體庫開發、系統程式設計之類,那麼學c語言,尤其是一些像巨集、指標、記憶體管理等知識就很有好處(這些東西在前一種應用中卻都要儘量避免)。但先學c的好處並不明顯,因為直接學c++同樣可以學到這些東西,只要改變一點學習側重就可以了。

上面是從應用方向角度說的。至於學習的困難程度,直接學c++並不難,而且在一些方面更簡單一些;只不過c++的內容比c多罷了。c++的創始人stroustrup就大力提倡不要學c,並列舉了先學c的種種壞處。

因此我的意見也是不學c,直接學c++。

現在國內講c++的書一般是先講與c相似的一塊,後講c++獨有的內容,沒有融合在一起,看似c成了「基礎」。其實這種**主要是由於國內編教材的教師多是學c語言(甚至機器碼、彙編)出身的,可能到很晚才接觸c++,因而有思維定勢。其實看國外許多教材,一入門就強調類的概念,入門不多久就大量用到stl,過程式的語法與這些一塊講,同樣也很直觀(物件的概念實際上比函式的概念直觀得多),可以學得通。

7樓:文化廚子

c++語言全稱:the c++ programming language,它是是在c語言的基礎上開發的一種通用程式語言,應用廣泛。c++支援多種程式設計正規化 :

物件導向程式設計、泛型程式設計和過程化程式設計。最新正式標準c++14於2023年8月18日公佈。 其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域,是至今為止最受廣大受用的最強大程式語言之一,支援類:

類、封裝、過載等!c++主要用於大型的應用程式開發,比如遊戲開發。c++實際上是對c語言的擴充套件,是c語言的超集,比如下面的**:

class test; //c++中的自定義類int a; //c語言定義 int變數aint b = 0; //定義int變數b並初始化為0int c = b; //定義int變數c並用變數b的值初始化int d; //定義變數d

d = c; //把變數c的值賦值給變數d在c++中將c語言的這些基本的操作進行了擴充套件,使c語言擁有更強大的功能,同時也是c++的超級特性。

test a; //定義test的預設建構函式test b = 0; //呼叫test帶有引數的建構函式;

test c = b; //呼叫 test的複製建構函式test d;

d = c; //呼叫 test的賦值運算子過載符。

c語言全稱:the c programming language,它是一門通用計算機程式語言,它是在bcpl語言上發展而來的,bcpl的作稱是basic ***bined programming language,因為c語言在它的基礎上開發出來的,所以很多c程式設計師喜歡將bcpl解釋成(before c progamming language)。c語言應用廣泛。

它的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。因此c語言在針對硬體程式設計以及系統底層開發中得到大量的應用,現在大部使用者使用的windows系統以及linux系統都是用c語言開發出來的。

嵌入式c語言和標準c的區別,嵌入式C語言和標準C的區別

語法上沒什麼區別,就是普通的c程式設計是在os之上,有很多的標準庫函式可以呼叫,分配的記憶體就是pc機的記憶體,處理器就是pc的cpu。而嵌入式c程式設計的話會涉及到操作硬體,所以底層沒有庫函式呼叫,需要自己編寫操作硬體的函式,另外編譯的時候是用交叉編譯器,記憶體是晶片上的ram,處理器就是晶片帶的...

c語言和有什麼不同,C語言中和的區別

是按位與運 算,比如a 6,b 5,表示成二進位制數 a 0110 b 0101 a b 0100 逐個位進行與運算 當然如果放在回 一個變數前面可以為取地址答的意思,如 a,就是取a的地址 是邏輯與,比如 真 真 為 真 c語言中,是指標運算子,是邏輯運算子,a 指的是變數a的實體地址,而 相當於...

c語言和c先學哪個好,C語言和c 先學哪個好?

c語言和c 當然是先學c語言比較好,c語言一般認為是程式設計新手最好初次程式設計接觸的語言了,其中的語法和一些思想對其它語言都有一定的影響。有了c語言,其它語言問題應該都不會太大的。c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯 處理低階儲存器 產生少量的機器...