指針數(shù)組的使用 數(shù)組名和指針的區(qū)別?
數(shù)組名和指針的區(qū)別?數(shù)組和指針之間的區(qū)別:數(shù)組名稱(chēng)確實(shí)表示指向數(shù)組第一個(gè)地址的指針,但是這個(gè)指針?lè)浅L厥?。它的值(指針的值指指針的地址)不能重?xiě)??梢灾貙?xiě)的只是它所指向的內(nèi)容。換句話(huà)說(shuō),數(shù)組名只能指向
數(shù)組名和指針的區(qū)別?
數(shù)組和指針之間的區(qū)別:數(shù)組名稱(chēng)確實(shí)表示指向數(shù)組第一個(gè)地址的指針,但是這個(gè)指針?lè)浅L厥狻K闹担ㄖ羔樀闹抵钢羔樀牡刂罚┎荒苤貙?xiě)??梢灾貙?xiě)的只是它所指向的內(nèi)容。換句話(huà)說(shuō),數(shù)組名只能指向數(shù)組的第一個(gè)地址。如果存在數(shù)組char a[],則如果出現(xiàn)a=a,則這是一個(gè)編譯錯(cuò)誤。對(duì)于普通指針,這是可能的。例如,如果有一個(gè)數(shù)組char a,那么定義char*P=a然后P=p1是合法的,這意味著指針P指向&A[1]。它們之間的第二個(gè)區(qū)別是,每當(dāng)使用數(shù)組名的指針時(shí),系統(tǒng)都會(huì)傳入數(shù)組的信息,而普通的指針只是一個(gè)4字節(jié)的整數(shù),例如:
char a[5]char*P=a//指針a和指針P都指向數(shù)組a的第一個(gè)地址,cout< sizeof(a)< “#”< sizeof(P)<< endl。運(yùn)行結(jié)果為“5##4”