字符指针pStr处理字符数组str时,当然前提是:char *pStr=str;
则下面四个表达式是等价的:
pStr[i]
str[i]
*(pStr+i)
*(str+i)
上面四个式子为什么等价?
pStr[i]
str[i]
这两个的i是什么?
*(pStr+i)
*(str+i)
这两个指的又是什么?
就是压根不知道四个东西指的对象是什么东西。
字符指针pStr处理字符数组str时,当然前提是:char *pStr=str;
则下面四个表达式是等价的:
pStr[i]
str[i]
*(pStr+i)
*(str+i)
上面四个式子为什么等价?
pStr[i]
str[i]
这两个的i是什么?
*(pStr+i)
*(str+i)
这两个指的又是什么?
就是压根不知道四个东西指的对象是什么东西。
核心:字符数组的首地址是什么?答案:第一个元素的地址
str[i] pStr[i] 这两个最容易看懂,通过下标操作数组 i 就是数组的下标
*(pStr+i) *(str+i) char 长度是多少,答案:1,指针 操作里面的 + 号 能做什么?移动指针指向的位置,i 就是指针移动的位置