C语言——指针移位4

指针的移位跟指向对象的数据类型有关

//例

    int a = 10;			//定义一个int类型的变量a,并且赋值10;
	int *p;				//定义一个指针变量p,可以指向int类型的变量
	char *q;			//定义一个指针变量q,可以指向char类型的变量
	p = &a;				//p指向了a  == 将a的地址赋值给了p
				
	q = p;				//q也存了a的地址编号
	printf("p = %d\n",p);		//2017
	printf("q = %d\n",q);		//2017
	p = p+1;
	q = q+1;
	printf("p = %d\n",p);   //2021
	printf("q = %d\n",q);	//2018

C语言——指针移位4_第1张图片

所以

        int *p 指针跳动一步,指针变量里存储的 地址编号就偏移 4

        char *p 指针跳动一步,指针变量里存储的 地址编号就偏移 1

        short *p 指针跳动一步,指针变量里存储的 地址编号就偏移 2

你可能感兴趣的:(C的学习,c语言)