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+

開啟你的職業生涯

完成課程獲得認證

立即開始
廣告