想問一下,c語言與c 中的條件運算子作用有什麼區別嗎

時間 2021-09-07 11:56:34

1樓:你猜我猜哇擦猜

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,過程式的語法與這些一塊講,同樣也很直觀(物件的概念實際上比函式的概念直觀得多),可以學得通。

2樓:接穎然燕弼

區別在這,

inta=2;

if(a=1)

printf("hello

world1111\n");

if(a

==1)

printf("hello

world2222\n");

第一個if裡邊的賦值只要右邊的不為0則條件判斷為真,a的值就是1,所以會輸出hello

world1111;

第二個if裡邊的比較只有a的值為1的時候才會輸出helloworld

2222,因為a的值為2,所以條件判斷為假,不會輸出。

3樓:匿名使用者

沒有什麼區別,這部分是完全一致的,除非在c++的類中重新定義,公共部分一樣。

c語言和c++的區別

4樓:給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,寫控制元件,寫系統。

5樓:匿名使用者

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

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

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

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

6樓:匿名使用者

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

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

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

7樓:匿名使用者

區別很多,暫列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語言功能更多、使用更方便。

8樓:水瓶蕭兮

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

==的名稱是等於,例如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中關係運算子的先級別相同,==和!=運算子的級別相同,前四種級別高於後兩種級別。關係運算子的優先順序低於算術運算子。關係運算子的優先順序高於賦值運算子。

9樓:金魚

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,過程式的語法與這些一塊講,同樣也很直觀(物件的概念實際上比函式的概念直觀得多),可以學得通。

c語言問題?詳細解答一下,謝謝,C語言問題,詳細解答一下,謝謝

密碼忘記了 遞迴呼叫,結果是輸出陣列中所有數的和,對這個例子結果是6.if n 1 return a 0 f a 1 n 1 這句話表示如果n 1,就以該陣列第二個數為輸出作為一個新陣列,n 1為新的n,遞迴呼叫該函式,將返回值和當前輸入陣列的第一個元素加起來的和作為返回值。else return ...

哪位高手能幫我區分一下在c語言中關係運算子 算數運算子和賦值

小小缺 優先順序從高到低為 算術運算子 關係運算子 賦值運算子 例 a 3 5 3 2 3與3 2先算 之後為關係運算子 號 之後再算 最後把值賦給a 答案最後為0 逗號運算子是所有運算子中級別最低的,道理同上。c語言的運算子的優先順序 邏輯運算子 條件運算子 賦值運算子 關係運算子 算術運算子。它...

C語言程式設計的取餘,C語言程式設計中運算子 (求餘運算子)怎樣使用?

c語言的取餘運算是指兩個整數相除時,運算結果只取商的整數部分,並且沒有四捨五入。那個函式輸出結果是 30 7is2 c語言中要輸出百分號,在printf函式裡必須用兩個百分號做格式控制,因為百分號本身被用作格式控制前導符使用了,屬於編譯系統的保留字元,它已經不能代表它自己了,為了能輸出它,就做了這個...