本帖最后由 socl_ycl 于 2015-9-16 14:43 编辑
请看如下代码
- #include <stdio.h>
- #include <stdlib.h>
- int main(void) {
- char *ptr = "LINUX";
- printf("\n [%c] \n",*ptr++);
- printf("\n [%c] \n",*ptr);
- return 0;
- }
复制代码 上面的代码输出结果如下:
[L]
[I]
因为“++”和“*”的优先权一样,所以“*ptr++”相当于“*(ptr++)”。
即应该先执行ptr++,然后才是*ptr,所以操作结果是“L”。第二个结果是“I”。
|
|