作业帮 > 综合 > 作业

指针后面有中括号表示什么

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/16 09:22:26
指针后面有中括号表示什么
main(){
char st[20],*ps;
int i;
printf("input a string:\n");
ps=st;
scanf("%s",ps);
for(i=0;ps[i]!='\0';i++)
if(ps[i]=='k'){
printf("there is a 'k' in the string\n");
break;
}
if(ps[i]=='\0') printf("There is no 'k' in the string\n");
}
for循环中的第二个式子 为什么是for(i=0;ps[i]!='\0';i++) ps是指针变量啊?
ps[i] 里的中括号,C语言处理成运算符,ps[i] 等价于 *(ps+i),
C语言里,指针和数组关系密切.*ps, 一旦有指向地址后,就可以看成 一维数组ps[], 哪种形式便于阅读理解,就可以用哪种形式. ps[i] 等价于 *(ps+i).