指针面试题2_指针数组

&aa拿到二维数组的地址,+1跳过整个二维数组,强制转换为整型指针,放到ptr1中,*(ptr-1)则为10

aa为二维数组首元素也就是首个一维数组的地址,aa+1为第二个一维数组的地址,解引用再强制转换为整型指针,放入ptr2中,

ptr2-1指向元素5,解引用就是5

指针面试题2_指针数组_02

char* a[]为应该指针数组,数组里面放有三个指针指向三个字符数组,将指针数组a的地址赋给二级指针pa,pa++,pa本身指向第一个字符数组,+1后指向第二个字符数组,*pa解引用则为at

指针面试题2_指针数组_03

c为应该指针数组,数组中有三个指针分别指向三个字符数组。p为级指针数组,里面放着指针,指向四个指针数组,cpp为三级指针,指向cp。++a表示先++再用,并且a自增1,a++表示先用a再++,a然后自增。

cpp表示指向cp首元素的地址,也就是c+3,++cpp则指向第二个元素,就是c+2,解引用一次则为c+2,再解引用一次则表示为字符数组POINT。


指针面试题2_字符数组_04