C语言数组的指针也可以使用下标
数组的指针和数组名其实是等价的,数组名可以使用下标,数组的指针也可以:
#include <stdio.h> #include<stdlib.h> #include<string.h> int main(void){ char str[]="abc"; char *sp=str; int ints[]={1,2,3}; int *ip=ints; for (int i;i<3;i++){ printf("i:%d:\nstr[%d]:%c\n",i,i,str[i]); printf("sp[%d]:%c,*(sp+i):%c\n",i,sp[i],*(sp+i)); printf("ints[%d]:%d\n",i,ints[i]); printf("ip[%d]:%d,*(ip+i):%d\n",i,ip[i],*(ip+i)); } }
用下标sp[i]或者指针*(sp+i)都相同,结果是都可以正常输出: