指针的自加自减运算(++,--)

//数组名代表数组的首地址,是指针常量,不能进行自加自减运算。
void main()
{
	char *a[2]={"one","two"},**p=a;
	printf("%s\t",(*p+1));//p是指向指针的指针,*p指向a[0]"one" *p+1指向第二个字母n
	printf("%s\t",*(p+1));//p+1指向a[1] 输出two
	printf("%c\t",**p);//“one”的第一个字母'o'
	printf("%s\t",*(p++)+1);//后++,先用后加,等效于*p+1;p++
	printf("%c\n",**p-1);//p指向“two”,**p=t,前一个字符是's'
	printf("%s\t",*(--p)+1);//先--,p指向"one",向前跳一个字符,输出"ne"
	printf("%s\t",*(++p)+1);//先++,p指向"two"向前跳一个字符,输出"wo"
	printf("%c\t",**p);//上一次p指向"two",输出't'
	printf("%c\t",**(p--));//等效于**p;p--;输出't',p指向one
	printf("%s\n",*p);//输出"one"
	system("pause");
}
 
  

输出结果显示:

你可能感兴趣的:(C++)