C/C++中后缀++和前缀++的优先级


下面我们将了解 C 或 C++ 中后缀++和前缀++的优先级。前缀 ++ 或 -- 的优先级高于解引用操作符 ‘*’,而后缀 ++ 或 -- 的优先级高于前缀 ++ 和解引用操作符 ‘*’。

当 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 加了 1,则 ptr 将指向下一个元素。所以结果是 ‘e’。

更新于: 2019 年 7 月 30 日

浏览量 2K+

开启你的职业生涯

完成课程获得认证

立即开始
广告