首先看幾個變量:
char s[3][4];
char (*k)[3];
char *p;
首先s是一個二維數組,s本身可以當作一個指針,指向二維數組的第一個元素,也就是第一個一維數組,其中包含4個元素;
k是一個指向包含3個元素的數組指針;
p是一個指向單個變量的指針。
是以s指向的數組包含了4個元素,k指向的數組包含了3個元素,p指向的對象包含了1個變量。
s+1意味者指針s走過了4個char機關
k+1意味者指針k走過了3個char機關
p+1意味者指針p走過了1個char機關
注意指針并不僅僅是一個位址,這三個指針之間的指派等操作是不被允許的,因為他們的類型不同。
指針的類型不僅僅是其指向的元素的類型,還含包括指向元素的大小。