C 與C區別簡述

2021-07-22 20:52:32 字數 1240 閱讀 9575

根本區別: c面向過程,c++面向過程,也物件導向

關係:c++可相容c的程式,c可看作c++的子集

改變

一.新增型別:布林型別bool(c99標準已經增加bool)

二.初始化方式

(1)複製初始化:int x=1024; //c中僅有的初始化方式

(2)直接初始化:int x (1024); //速度更快

三.隨用隨定義:不必將所有的定義寫在函式首部(c99標準已經增加隨用隨定義)

ps:c99標準前的部分不嚴謹的編譯器允許隨用隨定義

四.輸入輸出

1.流程不變:

輸入裝置–>輸入流—>語句–>變數

輸出裝置–>語句–>輸出流—>變數

2.區別

c中的語句為printf,scanf函式

c++中的語句為cin,cout

3.示例

cout

cout

cout

cout

<< boolalpha << y>x;

4.補充

(1)讀到eof

a.在讀檔案到末尾時會產生乙個eof,

b.在直接輸入時也是可以鍵入』eof』的,不過不同的命令列下輸入eof的快捷鍵不一樣

(2)讀入錯誤型別時會false。

5.優勢:因不用關注佔位符,資料型別等而減少出錯

五.命名空間namespace

1.定義:

namespace

a}

2.使用:using namespace std; //不必再a::x

3.補充:如果是寫成iostream.h的話就不用寫using namespace std; 了,

c++標準庫的標頭檔案全不帶.h結尾。 最好使用c++的命名慣例。

實際上c++中老的c標準庫標頭檔案也不帶 .h 結尾,而是在前面加上』c』來區分。比如c的函式庫

C 基礎 理解 簡述委託與事件的區別

委託提供與c 中 函式指標 相同的功能,用於傳遞和呼叫函式的引用,是觀察者模式的一種實現。事件是用委託實現的,是對委託的額外封裝,其本質上是一種特殊的委託。本篇使用分別使用委託和事件來實現簡單的觀察者模式例子,三個版本輸出完全相同,為方便對比,使用了最原始的delegate語法。讀者可以對比三版的不...

QML與C 互動步驟簡述

一,在qml中訪問c 類和物件 1 匯出型別到qml 第一步 實現乙個c 類 class a 實現a的一些條件 1,從 qobject 或 qobject 的派生類繼承 2,使用 q object 巨集 這兩個條件是為了讓乙個類能夠進入 qt 的元物件系統 meta object system 中,...

C 與C的區別

l c如果不寫返回值,預設是int,而c 中不能不寫返回值 可用void表示無返回值 如func1 l int func1 在c中表示可帶任意引數的函式,這是c的漏洞,使得它避開了引數型別檢查 而c 中表示不帶引數的函式。2 標頭檔案的區別 l c 的標頭檔案去掉了c中的.h,以c字首開始。比如,變...