C++ 基本語法

C++ 程序可以定義為對象的集合锻狗,這些對象通過調(diào)用彼此的方法進行交互≌蒲現(xiàn)在讓我們簡要地看一下什么是類狰住、對象张吉,方法齿梁、即時變量。

創(chuàng)一個小群肮蛹,供大家學(xué)習(xí)交流聊天

如果有對學(xué)C++方面有什么疑惑問題的勺择,或者有什么想說的想聊的大家可以一起交流學(xué)習(xí)一起進步呀。

也希望大家對學(xué)C++能夠持之以恒

C++愛好群伦忠,

如果你想要學(xué)好C++最好加入一個組織省核,這樣大家學(xué)習(xí)的話就比較方便,還能夠共同交流和分享資料昆码,給你推薦一個學(xué)習(xí)的組織:快樂學(xué)習(xí)C++組織 可以點擊組織二字气忠,可以直達

對象 -?對象具有狀態(tài)和行為邻储。例如:一只狗的狀態(tài) - 顏色、名稱旧噪、品種吨娜,行為 - 搖動、叫喚淘钟、吃宦赠。對象是類的實例。

類 -?類可以定義為描述對象行為/狀態(tài)的模板/藍圖米母。

方法 -?從基本上說勾扭,一個方法表示一種行為。一個類可以包含多個方法铁瞒∶钌可以在方法中寫入邏輯、操作數(shù)據(jù)以及執(zhí)行所有的動作慧耍。

即時變量 -?每個對象都有其獨特的即時變量燎斩。對象的狀態(tài)是由這些即時變量的值創(chuàng)建的。

C++ 程序結(jié)構(gòu)

讓我們看一段簡單的代碼蜂绎,可以輸出單詞?Hello World栅表。

實例

#include <iostream>using namespace std;

// main() 是程序開始執(zhí)行的地方 int main(){? cout << "Hello World"; // 輸出 Hello World? return 0;}

接下來我們講解一下上面這段程序:

C++ 語言定義了一些頭文件,這些頭文件包含了程序中必需的或有用的信息师枣。上面這段程序中怪瓶,包含了頭文件?<iostream>

下一行?using namespace std;?告訴編譯器使用 std 命名空間践美。命名空間是 C++ 中一個相對新的概念洗贰。

下一行?// main() 是程序開始執(zhí)行的地方?是一個單行注釋。單行注釋以 // 開頭陨倡,在行末結(jié)束敛滋。

下一行?int main()?是主函數(shù),程序從這里開始執(zhí)行兴革。

下一行?cout << "Hello World";?會在屏幕上顯示消息 "Hello World"绎晃。

下一行?return 0;?終止 main( )函數(shù),并向調(diào)用進程返回值 0杂曲。

編譯 & 執(zhí)行 C++ 程序

接下來讓我們看看如何把源代碼保存在一個文件中庶艾,以及如何編譯并運行它。下面是簡單的步驟:

打開一個文本編輯器擎勘,添加上述代碼咱揍。

保存文件為 hello.cpp。

打開命令提示符棚饵,進入到保存文件所在的目錄煤裙。

鍵入 'g++ hello.cpp '掩完,輸入回車,編譯代碼硼砰。如果代碼中沒有錯誤藤为,命令提示符會跳到下一行,并生成 a.out 可執(zhí)行文件夺刑。

現(xiàn)在缅疟,鍵入 ' a.out' 來運行程序。

您可以看到屏幕上顯示 ' Hello World '遍愿。

$ g++ hello.cpp

$ ./a.outHello World

請確保您的路徑中已包含 g++ 編譯器存淫,并確保在包含源文件 hello.cpp 的目錄中運行它。

您也可以使用 makefile 來編譯 C/C++ 程序沼填。

C++ 中的分號 & 語句塊

在 C++ 中桅咆,分號是語句結(jié)束符。也就是說坞笙,每個語句必須以分號結(jié)束岩饼。它表明一個邏輯實體的結(jié)束。

例如薛夜,下面是三個不同的語句:

x = y;y = y+1;add(x, y);

語句塊是一組使用大括號括起來的按邏輯連接的語句籍茧。例如:

{? cout << "Hello World"; // 輸出 Hello World? return 0;}

C++ 不以行末作為結(jié)束符的標識,因此梯澜,您可以在一行上放置多個語句寞冯。例如:

x = y;y = y+1;add(x, y);

等同于

x = y; y = y+1; add(x, y);

C++ 標識符

C++ 標識符是用來標識變量、函數(shù)晚伙、類吮龄、模塊,或任何其他用戶自定義項目的名稱咆疗。一個標識符以字母 A-Z 或 a-z 或下劃線 _ 開始漓帚,后跟零個或多個字母、下劃線和數(shù)字(0-9)午磁。

C++ 標識符內(nèi)不允許出現(xiàn)標點字符尝抖,比如 @、& 和 %漓踢。C++ 是區(qū)分大小寫的編程語言牵署。因此,在 C++ 中喧半,Manpower?和?manpower?是兩個不同的標識符。

下面列出幾個有效的標識符:

mohd? ? ? zara? ? abc? move_name? a_123

myname50? _temp? j? ? a23b9? ? ? retVal

C++ 關(guān)鍵字

下表列出了 C++ 中的保留字青责。這些保留字不能作為常量名挺据、變量名或其他標識符名稱取具。

asmelsenewthis

autoenumoperatorthrow

boolexplicitprivatetrue

breakexportprotectedtry

caseexternpublictypedef

catchfalseregistertypeid

charfloatreinterpret_casttypename

classforreturnunion

constfriendshortunsigned

const_castgotosignedusing

continueifsizeofvirtual

defaultinlinestaticvoid

deleteintstatic_castvolatile

dolongstructwchar_t

doublemutableswitchwhile

dynamic_castnamespacetemplate?

完整關(guān)鍵字介紹可查閱:C++ 的關(guān)鍵字(保留字)完整介紹

三字符組

三字符組就是用于表示另一個字符的三個字符序列,又稱為三字符序列扁耐。三字符序列總是以兩個問號開頭暇检。

三字符序列不太常見,但 C++ 標準允許把某些字符指定為三字符序列婉称。以前為了表示鍵盤上沒有的字符块仆,這是必不可少的一種方法。

三字符序列可以出現(xiàn)在任何地方王暗,包括字符串悔据、字符序列、注釋和預(yù)處理指令俗壹。

下面列出了最常用的三字符序列:

三字符組替換

??=#

??/\

??'^

??([

??)]

??!|

??<{

??>}

??-~

如果希望在源程序中有兩個連續(xù)的問號科汗,且不希望被預(yù)處理器替換,這種情況出現(xiàn)在字符常量绷雏、字符串字面值或者是程序注釋中头滔,可選辦法是用字符串的自動連接:"...?""?..."或者轉(zhuǎn)義序列:"...?\?..."。

從Microsoft Visual C++ 2010版開始涎显,該編譯器默認不再自動替換三字符組坤检。如果需要使用三字符組替換(如為了兼容古老的軟件代碼),需要設(shè)置編譯器命令行選項/Zc:trigraphs

g++仍默認支持三字符組期吓,但會給出編譯警告缀蹄。

C++ 中的空格

只包含空格的行,被稱為空白行膘婶,可能帶有注釋缺前,C++ 編譯器會完全忽略它。

在 C++ 中悬襟,空格用于描述空白符衅码、制表符、換行符和注釋脊岳∈哦危空格分隔語句的各個部分,讓編譯器能識別語句中的某個元素(比如 int)在哪里結(jié)束割捅,下一個元素在哪里開始奶躯。因此,在下面的語句中:

int age;

在這里亿驾,int 和 age 之間必須至少有一個空格字符(通常是一個空白符)嘹黔,這樣編譯器才能夠區(qū)分它們。另一方面莫瞬,在下面的語句中:

fruit = apples + oranges;? // 獲取水果的總數(shù)

fruit 和 =儡蔓,或者 = 和 apples 之間的空格字符不是必需的郭蕉,但是為了增強可讀性,您可以根據(jù)需要適當增加一些空格喂江。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末召锈,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子获询,更是在濱河造成了極大的恐慌涨岁,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,525評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吉嚣,死亡現(xiàn)場離奇詭異梢薪,居然都是意外死亡,警方通過查閱死者的電腦和手機瓦戚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評論 3 395
  • 文/潘曉璐 我一進店門沮尿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人较解,你說我怎么就攤上這事畜疾。” “怎么了印衔?”我有些...
    開封第一講書人閱讀 164,862評論 0 354
  • 文/不壞的土叔 我叫張陵啡捶,是天一觀的道長。 經(jīng)常有香客問我奸焙,道長瞎暑,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,728評論 1 294
  • 正文 為了忘掉前任与帆,我火速辦了婚禮了赌,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘玄糟。我一直安慰自己勿她,他們只是感情好,可當我...
    茶點故事閱讀 67,743評論 6 392
  • 文/花漫 我一把揭開白布阵翎。 她就那樣靜靜地躺著逢并,像睡著了一般。 火紅的嫁衣襯著肌膚如雪郭卫。 梳的紋絲不亂的頭發(fā)上砍聊,一...
    開封第一講書人閱讀 51,590評論 1 305
  • 那天,我揣著相機與錄音贰军,去河邊找鬼玻蝌。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的灶伊。 我是一名探鬼主播疆前,決...
    沈念sama閱讀 40,330評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼寒跳,長吁一口氣:“原來是場噩夢啊……” “哼聘萨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起童太,我...
    開封第一講書人閱讀 39,244評論 0 276
  • 序言:老撾萬榮一對情侶失蹤米辐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后书释,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翘贮,經(jīng)...
    沈念sama閱讀 45,693評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,885評論 3 336
  • 正文 我和宋清朗相戀三年爆惧,在試婚紗的時候發(fā)現(xiàn)自己被綠了狸页。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,001評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡扯再,死狀恐怖芍耘,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情熄阻,我是刑警寧澤斋竞,帶...
    沈念sama閱讀 35,723評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站秃殉,受9級特大地震影響坝初,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜钾军,卻給世界環(huán)境...
    茶點故事閱讀 41,343評論 3 330
  • 文/蒙蒙 一鳄袍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧吏恭,春花似錦拗小、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,919評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至唇礁,卻和暖如春勾栗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背盏筐。 一陣腳步聲響...
    開封第一講書人閱讀 33,042評論 1 270
  • 我被黑心中介騙來泰國打工围俘, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 48,191評論 3 370
  • 正文 我出身青樓界牡,卻偏偏與公主長得像簿寂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宿亡,可洞房花燭夜當晚...
    茶點故事閱讀 44,955評論 2 355

推薦閱讀更多精彩內(nèi)容

  • C++ 程序結(jié)構(gòu) 讓我們看一段簡單的代碼常遂,可以輸出單詞 Hello World。 實例 #includeusing...
    輕松學(xué)習(xí)C語言閱讀 614評論 0 1
  • 感賞收到紅包啦挽荠!每當打開手機的時候就有紅包克胳,好巧哦,不用等圈匆,不用想漠另,只要一動手機就有。這是誰這么棒呀跃赚?當然...
    o糖果罐o閱讀 106評論 0 0
  • “他這節(jié)課又在講風(fēng)水了”“他到底在干嘛笆搓?這簡直就是浪費生命”“救命!這種人還能站在大學(xué)的課堂上”………每到星期一早...
    空軍建軍節(jié)41閱讀 319評論 0 0
  • 重點是A=LU對于單個矩陣來講纬傲,求逆满败,轉(zhuǎn)置,不分先后 ?A的轉(zhuǎn)置的逆嘹锁,就是A的逆的轉(zhuǎn)置 若A葫录,B都可逆,則AB的逆...
    大飛哥閱讀 142評論 0 0
  • 剛才看到面粮,今沖龍有小喜,就想爽继低,爽這個字熬苍,因為我老公屬龍,但覺得他不管怎樣是我老公現(xiàn)在袁翁,我又繼續(xù)開始心理想爽柴底,爽,...
    心愿幸福閱讀 141評論 0 0