萬劍歸宗 二 變數和基本型別

2021-05-25 23:23:30 字數 1549 閱讀 5566

1.基本內建型別

包括整型,浮點型等等等等,要注意的是他們各自所佔位元組長度,以及不同機型對相同操作的不同處理。

簡單的如整型賦值的截斷處理,無符號和帶符號的整型區別等。

在c++中,short--16bit,int--32bit,long--32或64bit

在c#中,short--32bit,int--32bit,long--64bit ......

2.字面值常量

注意多行字面值,也就是反斜槓符號『\』

3.變數

左值:可以出現在賦值語句左邊或右邊;

右值:只能出現在賦值語句右邊,不能出現在左邊。

注意63個c++關鍵字,例如:asm,const_cast,dynamic_cast,explicit,mutable,reinterpret_cast,static_cast,volatile,wchar_t ……

同時注意c++操作符替代名。

最後要注意:初始化變數有複製初始化和直接初始化兩種,而我們平時基本只用複製初始化,後續會講到他們之間的差別。

4.const限定符

簡單的說是常量限定符。

在大多數工程中,非const變數預設為extern,要使const變數能夠在其他的檔案中訪問,必須顯式地指定為extern,例如:

extern const int bufsize = 100;   //const常量必須在第一次宣告時就同時初始化,也就是定義

extern const int bufsize;

5.引用

引用是一種復合型別,通過在變數名前新增「&」符號來定義。

引用其實是別名。const引用是指向const的引用。例如:

const int a = 1;

const int &b = a;    //如果a不為const,則非法

非const引用只能繫結到與該引用同型別的物件;

const引用則可以繫結到不同但相關型別的物件或繫結到右值。  //為什麼?簡單的說是因為不同型別間會進行中間變化……

6.typedef

用來定義型別的同義詞,通常用於下面三種目的:

為了隱藏特定型別的實現,強調使用型別的目的;

簡化複雜的型別定義,使其更容易理解;

允許一種型別用於多個目的,同時使得每次使用該型別的目的明確。

7.列舉

定義與結構體定義相似,成員是常量。定義過程中可以顯式定義,但始終保持非顯式定義的常量的值是其之前常量+1。

8.類型別

用class和struct關鍵字定義類的唯一差別在於預設訪問級別:預設情況下,struct的成員為public,而class的成員為private。

在c#中,無論哪種,其成員的預設訪問級別都為private。

9.設計自己的標頭檔案

標頭檔案用於宣告,而不是用於定義;

標頭檔案包含在多個原始檔中,所以不應該包含變數或函式的定義;

一些const物件定義在標頭檔案中;

避免多重包含標頭檔案的有效方式是:

#ifndef include

#define include

//do something

#endif

c 學習筆記(二) 變數和基本型別

字面值就是常量。十進位製字面值沒有負數,比如 42,他的含義是對42取負值 十進位製字面值型別 int,long,long long 最小的那個 八進位制和十六進製制 int,unsigned int,long,unsigned long,long long,unsigned long long字首...

變數和基本型別二

1.宣告和定義 為了讓多個檔案訪問相同的變數,c 區分了宣告和定義。定義 用於為變數分配儲存空間,同時為變數指定初始值。乙個程式中變數有且只有乙個定義。1.1 extern 宣告 用於向程式表明變數的型別和名字。定義也是宣告,定義變數時宣告了它的型別和名字。可以使用extern 關鍵字宣告變數名而不...

Python學習筆記之二 變數以及基本型別

ok 既然大家都會使用python的 hello world 那python就相當於會用了嘛,各回各家吧。好吧,其實那只是乙個開始而已。一 本次會學習python的基本概念 1 在學習一門語言時不可避免的會對一些 數值 進行操作比如來個 1 1 2,或則 1 2 3等。2 獲取想要儲存某個 字元 或...