/* 范例:7-9 */
#include <stdio.h>
void main()
{
int a\[\]={1,2,3,4,5,6,7,8,9,10};
int *ptr1 = a;
int *ptr2 = a+9;
for(int i=0;i<10;i++)
printf("\na%d的地址是%d",i,&ai);
printf("\nptr1是%d *ptr1是%d",ptr1,*ptr1);
printf("\nptr2是%d *ptr2是%d",ptr2,*ptr2);
printf("\nptr2-ptr1=%d",ptr2-ptr1);
ptr1++;
if (ptr1 < ptr2) /* 以指针变量作比较的动作 */
printf("\nptr1 < ptr2");
if (ptr1 > ptr2) /* 以指针变量作比较的动作 */
printf("\nptr1 > ptr2");
printf("\nptr1是%d *ptr1是%d",ptr1,*ptr1);
ptr2=ptr2-8; /* 以指针变量作减法的动作 */
printf("\nptr2是%d *ptr2是%d",ptr2,*ptr2);
if (ptr1 == ptr2) /* 以指针变量作比较的动作 */
printf("\nptr1 == ptr2");
printf("\nptr1-ptr2=%d",ptr1-ptr2);
getchar();
}
程序执行结果:
a0的地址是6618588
a1的地址是6618592
a2的地址是6618596
a3的地址是6618600
a4的地址是6618604
a5的地址是6618608
a6的地址是6618612
a7的地址是6618616
a8的地址是6618620
a9的地址是6618624
ptr1是6618588 *ptr1是1
ptr2是6618624 *ptr2是10
ptr2-ptr1=9
ptr1 < ptr2
ptr1是6618592 *ptr1是2
ptr2是6618592 *ptr2是2
ptr1 == ptr2
ptr1-ptr2=0