二级指针与指针数组的关系
http://blog.csdn.net/shuaishuai80/article/details/6129742
?
?
(1)指針數組argv中每個元素都是指針,即每個元素都是字符串的首地址.因此測試1組輸出結果為:
?????? argv[0]=0x4270ac,argv[0]=abcdefg
?????? argv[1]=0x426034,argv[1]=1234567
?????? argv[2]=0x42601c,argv[2]=q1w2e3r
????
(2)二級指針p指向指針數組argv的首地址處.因此測試2組輸出結果為:
?????? p=0x13ff74??????????????? /*二級指針p中存放了指針數組argv所在(連續)地址空間的首地址*/
?????? argv[0]=0x4270ac???? /*字符串0首地址*/
????? ?&argv[0]=0x13ff74??? /*字符串0首地址所在存儲空間的地址*/
?? 可以看出,二級指針p所指向的地址與指針數組中首元素所在存儲空間地址相同,均為0x13ff74.
(3)從測試3組可知,二級指針p中存放了指針數組argv所在(連續)地址空間的首地址,換句話說,二級指針p中存放的是地址,所以,*p是該地址中的內容,即字符串0的首地址.因此測試3組輸出結果為:
?????? *p=abcdefg
?????? *(p+1)=1234567
?????? *(p+2)=q1w2e3r
(4)從測試2組可知,二級指針p中存放了指針數組argv所在(連續)地址空間的首地址,因此測試4組輸出結果為:
?????? (*p)=abcdefg
?????? (*p+1)=bcdefg
?????? (*p+2)=cdefg
(5)從測試2組可知,二級指針p中存放了指針數組argv所在(連續)地址空間的首地址,因此測試5組輸出結果為:
?????? p=0x13ff74
?????? argv=0x13ff74
?????? &argv[0]=0x13ff74
?????? &argv[1]=0x13ff78
?????? &argv[2]=0x13ff7c
?? 再次驗證了二級指針p與指針數組中各成員之間的關系.
(6)由于是指針型數據,因此測試6組輸出結果為:? sizeof(argv)=4
總結
以上是生活随笔為你收集整理的二级指针与指针数组的关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都欢乐谷6号线在哪站下
- 下一篇: C语言 可变参数