c 學習筆記第二部分

2021-10-23 04:16:30 字數 2795 閱讀 1819

part  2

一  陣列  指標

在c++中的陣列std::string str; ,  string是std類裡面的乙個物件  這個語句就是命名乙個陣列名字叫做str

2. c++ 允許指標群 p,就是多個指標有同樣的值

int *p1 = &myint;

int *p2 = &myint;

c++ 支援無型別(void)指標,就是沒有被宣告為某種特定型別的指標,例如:void *vpointer;

注意:對乙個無型別指標進行解引用前,必須先把它轉換為一種適當的資料型別。

3.過載的例子

#include

void print( int *pbegin, int *pend )

}

void print( char *pbegin, char *pend )

}

int main()

;

char name[5] = ;

print( num, num+5 );

std::cout << '\n';

print( name, name+5 );

std::cout << '\n';

return 0;

}

泛型程式設計

#include

template

void print(thename*pbegin, thename *pend )

}

int main()

;

char name[5] = ;

print( num, num+5 );

std::cout << '\n';

print( name, name+5 );

std::cout << '\n';

return 0;

}

三  結構體

1.結構(structure)是一種由程式設計師定義的、由其他變數型別組合而成的資料型別。

定義乙個結構的基本語法是:

struct name

;// 請注意,別忘記這個小不點^_^

2.但我們有乙個問題是:怎樣才能通過指標解引用該指向結構的各個成員?(或者說是通過指標訪問各個成員的值)

建立乙個指向該結構的指標:

fishoil  *pjiayu = &jiayu;

注意:因為指標的型別必須與指向的位址的變數的型別一致,所以pjiayu指標的型別也是fishoil

一:我們可以通過對指標進行解引用來訪問相應的變數值

(*pjiayu).name = 「黑夜」;

(*pjiayu).id = 「fishc_00001」;

如果你覺得剛剛的方法不夠地道不夠味兒,可以換用第二種方法:

i.e. …… ……

pjiayu -> name = 「黑夜」;

pjiayu -> id = 「fishc_00001」;

pjiayu -> *** = f;

std::cout << pjiayu -> name;

std::cout << pjiayu -> id;

std::cout << pjiayu -> ***;

3.聯合體,列舉各種型別,傳值,傳址等等各種傳遞和c語言幾乎沒有什麼差別

linux筆記第二部分

其實我只是想記錄下自己的學習軌跡,順便讓自己的部落格裡面稍微有點東西。之前筆記都是儲存在evernote上,因為是普通使用者,貌似不能共享。就拷過來了。總之這是第二部分 linux磁碟及檔案系統管理以及如何獲取幫助 linux 08磁碟基本概念 linux 09使用fdisk進行磁碟管理 1.fdi...

Web API 第二部分

web api 第二部分 元素偏移量 offset element.offsettop element.offsetleft element.offsetwidth 可以得到元素的大小 寬度和高度 是包含padding border width element.offsetheight elemen...

redux 第二部分

redux 的使用方法,為什麼使用 action.js 檔案,進行優化 將其分開,然後我們通過工廠函式的每次返回不同的物件,由於引數是固定的,每次返回的都是事件型別和事件資料,所以我們可以使用乙個函式,通過其返回值來返回乙個物件,讓後傳遞給 action 我們的 reducer 函式有兩個引數,引數...