工作學(xué)習(xí)中一定要善始善終,只有總結(jié)才標(biāo)志工作階段性完成或者徹底的終止,。通過總結(jié)對工作學(xué)習(xí)進(jìn)行回顧和分析,,從中找出經(jīng)驗(yàn)和教訓(xùn),引出規(guī)律性認(rèn)識,,以指導(dǎo)今后工作和實(shí)踐活動,。相信許多人會覺得總結(jié)很難寫?下面是小編帶來的優(yōu)秀總結(jié)范文,,希望大家能夠喜歡!
c語言指針的基本概念及特點(diǎn) c語言指針的總結(jié)篇一
關(guān)于指針的基本概念,,我就不詳細(xì)介紹了,因?yàn)橛性S多書都介紹的很詳細(xì),。這里我只介紹一部分,。指針指向一個地址,而指針本身在大多數(shù)系統(tǒng)上都是一個無符號整數(shù)(在32bit機(jī)上是4byte,,在64bit機(jī)上是8byte),。
在上面的例子中,先定義了一個指針p,,它的類型是int,,也就是說它只能指向一個int型的變量,而不能指向其他類型的變量,。最后我們將a變量的地址賦給p,。在這個過程中,涉及到兩個內(nèi)存塊,,一個是存放指針p的內(nèi)存(用&p可得到內(nèi)存地址),,一個是存放a的值的內(nèi)存塊(用&a可以得到內(nèi)存地址)。而第一個內(nèi)存存的p的值經(jīng)過賦值語句后也就是&a的值了,。另外一個注意點(diǎn)是, *(星號)和變量類型以及變量名之間可以有任意個空格,,也可以沒有,。比如下面三種方式都是一樣的:
int a = 10;
int *p; //聲明一個指針,但未初始化,,此時(shí)為野指針
p = &a; //將a變量的地址賦給指針p
在上面的例子中,,先定義了一個指針p,,它的類型是int,也就是說它只能指向一個int型的變量,,而不能指向其他類型的變量,。最后我們將a變量的地址賦給p。在這個過程中,,涉及到兩個內(nèi)存塊,,一個是存放指針p的內(nèi)存(用&p可得到內(nèi)存地址),一個是存放a的值的內(nèi)存塊(用&a可以得到內(nèi)存地址),。而第一個內(nèi)存存的p的值經(jīng)過賦值語句后也就是&a的值了,。另外一個注意點(diǎn)是, *(星號)和變量類型以及變量名之間可以有任意個空格,,也可以沒有,。比如下面三種方式都是一樣的':
int* a;
int * a;
int *a;
首先從標(biāo)示符開始閱讀,然后往右讀,,每遇到圓括號的右半邊就調(diào)轉(zhuǎn)閱讀方向,。重復(fù)這個過程直到整個聲明解析完畢。需要注意的是,,已經(jīng)讀過的部分在后續(xù)作為一個整體來看,。
int *a[3];
//首先a右邊是[],說明a是一個具有3個元素的數(shù)組
//右邊讀完,,則讀左邊,。a左邊是int*,說明a的元素是int類型的指針
int (*a)[3]
//首先,,a右邊是圓括號的右半邊,,轉(zhuǎn)向,左邊是一個*,,說明a是一個指針
//遇到括號,,再轉(zhuǎn)向,是一個[],,說明a是一個指向3個元素的數(shù)組的指針
//左邊是int,說明元素類型是int
//所以,,a是一個指向具有3個整型元素的數(shù)組的指針
int (*func)(int p);
//相同的方法,,func首先是一個指針
//然后右邊是一個括號,說明(func)是個函數(shù),,而func是指向這個函數(shù)的指針
//這個函數(shù)具有int類型的參數(shù),,返回值類型為int
int (*func[3])(int p);
//同理,func首先是一個具有3個元素的數(shù)組
//其次,,func左邊是一個*,,說明func數(shù)組的元素是指針,。要注意修飾的是func[3],而不是func,。因?yàn)橐呀?jīng)讀過的部分在后面都作為一個整體來對待
//跳出第一個圓括號,,右邊又是一個圓括號,說明func數(shù)組的元素是函數(shù)類型的指針,。這個函數(shù)具有int類型的參數(shù)和int型返回值
s("content_relate");
【c語言指針的基本概念】相關(guān)文章:
1.
c語言指針教學(xué)
2.c語言指針的傳遞
3.c語言指針的用法
4.c語言指針用法詳解
5.c語言指針函數(shù)和函數(shù)指針詳解
6.c語言的指針類型解析
7.c語言中的指針解讀
8.c語言指針數(shù)組的概念