题目:在 VS编译器以下程序的输出结果是
1 2 3 |
|
从优先级上讲,自增操作符++ 高于 *,所以 *p++ 等同于 *(p++)。也就是先取出 p 所对应地址处的值,然后让 p++.
等同于 x=y++, 先把y的值赋给x,然后让y自增。
题外话: 这里 char *p=s, 则 p 的输出是 123, *p的输出是 1. p是字符数组s[]的首地址,代表了整个字符数组,也代表了一个字符串。
题目:在 VS编译器以下程序的输出结果是
1 2 3 |
|
从优先级上讲,自增操作符++ 高于 *,所以 *p++ 等同于 *(p++)。也就是先取出 p 所对应地址处的值,然后让 p++.
等同于 x=y++, 先把y的值赋给x,然后让y自增。
题外话: 这里 char *p=s, 则 p 的输出是 123, *p的输出是 1. p是字符数组s[]的首地址,代表了整个字符数组,也代表了一个字符串。