布林型:bool
字元型:char(區分signed(預設)、unsigned)
整型: short、int、long、long long(區分signed(預設)、unsigned)
規則:short至少16位;int至少和short一樣;long至少32位,且至少和int一樣長;long long至少64位,且至少和long一樣長。
備註:在32位和64位計算機上,對於整形唯一不同的就是int和指標的大小,其中32位計算機上int佔2位元組,64位上佔4位元組。指標大小和int大小相同
寬字元型:wchar_t
char是8位字元型別,最多只能包含256種字元,許多外文字符集所含的字元數目超過256個,char型無法表示。
wchar_t資料型別一般為16位或32位,但不同的c或c++庫有不同的規定,如gnu libc規定wchar_t為32位,總之,wchar_t所能表示的字元數遠超char型。
標準c++中的wprintf()函式以及iostream類庫中的類和物件能提供wchar_t寬字元型別的相關操作。
字元型c++11新增型別:char16_t和char32_t
char16_t:16位無符號->字首u表示
char32_t:32位無符號->字首u表示
浮點型:float、double、long double
float:至少32位
double:至少48位,且不少於float,通常為64位
long double:至少和double一樣長,通常為80,96,128位
陣列:陣列格式:typename arrayname[arraysize]
一維陣列:int arr[3] = ;
賦值:arr[1] = 2;
二維陣列:int arr[2][3] = , }
arr(arr[0]:代表的是首行(即第0行)的首位址
arr+1(arr[1]):代表的是第1行的首位址
陣列長度:int length = sizeof(arr)/sizeof(int)
規則:所有的元素必須是同一種型別
陣列的長度必須是固定的
陣列的計數是從0開始的
陣列在記憶體中是連續儲存的
陣列的位址是首元素的位址
字串:
c字串:
字元陣列:char dog[2] = ;
字串: char dog[2] = ;char dog[3] = 「hel」 ;char *ptr = 「c language」
常用函式:
include
strlen():求字串長度,不包含』\0』;
strcmp():對比兩個字串,如果相等,返回0;
strcat():拼接兩個字串,並且將拼接好的字串給第乙個字串;
strcpy():字串拷貝函式
c++字串:
std:: string
賦值:string str = 「hello world」;
拼接:str1 = str2 + str3;
長度:int len1 = str.size();
列舉:如果乙個變數只有幾種可能的值,可以定義為列舉(enumeration)型別。所謂"列舉"是指將變數的值一一枚舉出來,變數的值只能在列舉出來的值的範圍內。
建立列舉,需要使用關鍵字 enum。
列舉型別的一般形式為:
enum 列舉名 列舉變數;
預設情況下,第乙個名稱的值為 0,第二個名稱的值為 1,第三個名稱的值為 2,以此類推。但是,您也可以給名稱賦予乙個特殊的值,只需要新增乙個初始值即可
#include
using namespace std;
intmain()
; color c = red;
cout << c << green << endl;
}
結構:
結構定義並不預留記憶體,不會分配空間
訪問結構成員的操作要用圓點運算子(.),一般形式為:結構變數名.成員名。
可以通過指向結構的指標訪問結構成員,常用形式為:結構指標變數->成員名
位元組補齊演算法:
如果只有乙個值,採用的就是自身的對齊方式;
如果有多個值,採用最大的資料型別佔據的記憶體數,作為對齊標準;
結構體所佔空間的總大小,必須是最大的資料型別的整數倍
#include
using namespace std;
intmain()
; table1 t1 =
; t1.column =3;
cout << t1.column << endl;
//初始化方法二:
struct table2
t2,*pt2;
t2.column =4;
cout << t2.column << endl;
pt2 =
&t2;
strcpy_s
(pt2->name,3,
"ha");
cout << t2.name << endl;
//初始化方法三:
typedef
struct stu
stu,
*pstu;
stu stu;
stu.num =3;
cout << stu.num << endl;
//pstu pstu = (pstu)malloc(sizeof(stu));//c
//pstu->num = 4;
//free pstu;
pstu pstu = new stu;
//c++
pstu->num =5;
cout << pstu->num << endl;
delete pstu;
//結構陣列:
table1 test[2]
=,};
test[0]
.column =6;
cout << test[0]
.column << endl;
}
共用體:
定義:共同體的定義類似結構體,不過共同體的所有成員都在同一段記憶體中存放,起始位址一樣,並且同一時刻只能使用其中的乙個成員變數
共用體與結構體區別:
1、結構體變數所佔長度是各成員佔的記憶體長度之和。每個成員分別占有自己的記憶體單元。共用體變數所佔的記憶體長度等於最長的成員的長度。
2、共用體同一時刻只能存放並且使用其中的乙個成員變數
3、對共用體不同成員賦值,會對其他成員重寫,原來成員的值就不存在了
#include
using namespace std;
intmain()
; data d;
d.a =
'q';
cout << d.a << endl;
//q d.b =
'm';
cout << d.b << endl;
//m cout << d.a << endl;
//mreturn0;
}
C資料型別總結
一 基本資料型別 1,int a,long int long 8個位元組 ld b,short int,short 2個位元組 d i c,unsigned int,unsigned 4 個位元組,zd d,signed int,signed,int 4個位元組 d i 2,float double...
C 資料型別總結
一 資料型別 資料型別是按照規定形式表示資料的一種方式,不同的資料型別占用空間也不同 對於資料型別,還應該明白以下幾點 1 整型資料 int可以有修飾符 short long long long三種,後面的int可省略 預設的整形資料常量為int add,共4種,int short int long...
C 資料型別總結
c 的基本整型 按寬度遞增的順序排列 分別是char short int long long long,其中char型別最常用來表示字元,而不是數字。c 提供了一種靈活的標準,確保了最小長度 short至少16位 int 至少與short一樣長 long至少32位,且至少與int一樣長 long l...