在这里,我们将看到 C 或 C++ 中 postfix++ 和 prefix++ 的优先级。前缀 ++ 或 -- 的优先级高于解引用运算符 '*',后缀 ++ 或 -- 的优先级高于前缀 ++ 和解引用运算符 '*'。
当ptr为指针时,则*ptr++表示*(ptr++),++*prt表示++(*ptr)
#include<iostream> using namespace std; int main() { char arr[] = "Hello World"; char *ptr = arr; ++*ptr; cout << *ptr; return 0; }输出结果
I
所以这里首先ptr指向'H'。使用 ++*ptr 后,它将 H 增加 1,现在值为“I”。
#include<iostream> using namespace std; int main() { char arr[] = "Hello World"; char *ptr = arr; *ptr++; cout << *ptr; return 0; }输出结果
e
所以这里首先ptr指向'H'。使用 *ptr++ 后它增加了指针,所以 ptr 将指向下一个元素。所以结果是'e'。