使用整数指向字符串中的字符

时间:2015-08-14 11:42:12

标签: c

#include<stdio.h>
main()
{
  char s[]="man";
  int i=0;
  printf("%c%c\n",s[i],i[s]);
}

o / p:m m

* s [i]和i [s]都打印'm'和'm'。 *但是s [i] = m,这是可以接受的,但是我[s] = m ??
*请任何人解释一下这个。

1 个答案:

答案 0 :(得分:1)

这是因为s[i]相当于*(s + i),并且由于添加的交换属性,*(s + i)等于*(i + s),导致i[s]有效的。