国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++編程 學(xué)習(xí)筆記(二)

2019-11-08 02:57:28
字體:
供稿:網(wǎng)友

第二章 變量和基本類型 1、計(jì)算機(jī)可尋址的最小內(nèi)存塊稱為“字節(jié)byte”,存儲(chǔ)的基本單元稱為“字Word”,字是由幾個(gè)字節(jié)組成的,一般1字節(jié)由8比特構(gòu)成,字則由32或者64比特構(gòu)成,也就是4或者8字節(jié) 2、區(qū)間范圍:如果我們賦予了區(qū)間范圍外的數(shù),則對(duì)應(yīng)實(shí)際結(jié)果是該值對(duì)范圍取模后所得的余數(shù),賦予超出范圍的值時(shí),結(jié)果是未定義的,此時(shí)程序可能繼續(xù)工作、可能奔潰,也可能生成垃圾。 3、把負(fù)數(shù)轉(zhuǎn)換為無符號(hào)數(shù)類似于直接給無符號(hào)數(shù)賦一個(gè)負(fù)值,結(jié)果等于這個(gè)負(fù)數(shù)加上無符號(hào)數(shù)的模 4、可以將整形字面值寫作十進(jìn)制數(shù)、八進(jìn)制數(shù)(以0開頭)、十六進(jìn)制數(shù)(以0x開頭) 5、轉(zhuǎn)義序列l(wèi)ike /n之類自己在網(wǎng)上查找 這里寫圖片描述 6、變量初始化,可以采用下面4種形式: int units_sold = 0; int units_sold = {0}; int units_sold{0}; int units_sold(0); 內(nèi)置的局部變量必須初始化 7、變量只能被定義一次,但可以被多次聲明;變量定義必須且只能出現(xiàn)在一個(gè)文件中,其他用到該變量的文件必須對(duì)其進(jìn)行聲明,絕對(duì)不能重復(fù)定義。在變量前面添加extern不賦值是聲明,賦值了就抵消了extren的作用,變?yōu)槎x了。不加extern為聲明且定義。 8、命名規(guī)則:用戶自定義標(biāo)識(shí)符不能連續(xù)出現(xiàn)兩個(gè)下劃線,也不能以下劃線連大寫字母開頭。此外,定義函數(shù)體外標(biāo)識(shí)符不能以下劃線開頭。 9、嵌套域與全局局部變量: (1)::i訪問全局變量,如std::cout<<::reused…std::endl;輸出的是全局變量 (2)當(dāng)作用域操作符左側(cè)為空,向全局域發(fā)出請(qǐng)求獲取作用域操作符右側(cè)名字對(duì)應(yīng)的變量 (3)for循環(huán)里面重新賦值,超出了for作用范圍還是輸出全局時(shí)候的賦值 such as:

int i=100,sum=0;for(int i=0;i!=10;++i)sum+=i;std::cout<<i<<""<<sum<<std::endl;

輸出i是100 10、引用與指針 引用:引用必須被初始化,就是指向同一個(gè)地址,且類型要保持一致,&取地址符 如int ival=1024; int &rel=ival; 指針:存放某個(gè)對(duì)象的地址,*解引用符 如int dval=2;int *pd=&dval; int *pd2=pd; 可知*pd=2; 空指針:三種形式,第一種常用 int *p1=nullptr; int *p2=0; int *p3=NULL; 注:指針也需要初始化,不然會(huì)訪問未明的地址,未知是否合法;指針賦值也要相同類型的 void* 指針:可以存放任意類型對(duì)象的地址。不能直接操作void指針?biāo)傅膶?duì)象 復(fù)合類型指針:指向指針的指針 如 int ival=2014; int *pi=&ival;//pi指向一個(gè)int型的數(shù); int **ppi=&pi;//ppi指向一個(gè)int型的指針; ppi→pi→ival(1024) 簡單讀這種復(fù)合型的辦法是:從右往左閱讀其定義 11、一些符號(hào)定義 (1)const:表示常量對(duì)象,定義為常量后如果賦值就會(huì)報(bào)錯(cuò),const int j=42; 指向常量的指針:不能改變指向?qū)ο蟮闹?如,const int pie=12; const int *ptr=&pie;(放在外面表示其值) 常量指針:指針本身定為常量,指向的地址不能改變 如,int err=0; int *const ero=&err;(放在里面表示其值) 頂層const:表示指針本身是個(gè)常量 底層const:表示指針?biāo)傅膶?duì)象是一個(gè)常量 (2)constexPR常量表達(dá)式:指值不會(huì)改變且在編譯過程就能得到計(jì)算結(jié)果的表達(dá)式 可以這樣constexpr int limit=mf+1; (3)typedef類別名,別名聲明 typedef double wages; wages base,*p;相當(dāng)于double base,*p; (4)auto:讓編譯器通過初始值來推算變量的類型,auto定義必須有初始值 如 auto item=vall+vall2;由結(jié)果來推斷相加結(jié)果類型 類型不一致會(huì)報(bào)錯(cuò) 如 auto i=0,pi=3.14;//wrong (5)decltype:選擇并返回操作數(shù)的數(shù)據(jù)類型 decltype(f()) sum=x;//sum的類型就是函數(shù)f的返回類型 decltype表達(dá)式里面是加了括號(hào)的變量,結(jié)果一定是引用 decltype((i)) d=&a; 12、自定義數(shù)據(jù)結(jié)構(gòu) (1)結(jié)構(gòu)體,類數(shù)據(jù)結(jié)構(gòu) struct Sales_data{ std::string bookNo; unsigned units_sold=0; double revenue=0; }在里面已經(jīng)初始化了,接下來是成員的使用,如 Sales_data data1,data2; data2.bookNo (2)頭文件保護(hù)符

#ifndef SALESITEM_H// we're here only if SALESITEM_H has not yet been defined #define SALESITEM_H //指令把一個(gè)名字設(shè)定為預(yù)處理變量。。。。。。#endif

自己理解重寫一個(gè)Sales_data.h的頭文件,頭文件形式

#ifndef SALES_DATA_H#define SALES_DATA_H#include <string>struct Salse_data{ std::string bookNo; unsigned units_sold = 0; double revenue = 0.0;};#endif
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 望都县| 云林县| 郴州市| 大英县| 德州市| 腾冲县| 金华市| 衢州市| 广水市| 鹿泉市| 遂平县| 汉川市| 香格里拉县| 莲花县| 资溪县| 兴仁县| 元谋县| 应城市| 榆社县| 永济市| 咸宁市| 镇坪县| 安化县| 陆丰市| 翁牛特旗| 丹寨县| 寿阳县| 连城县| 上思县| 游戏| 盐津县| 嵩明县| 南充市| 大渡口区| 连平县| 马公市| 黄大仙区| 江西省| 兴隆县| 平湖市| 泰和县|