Рубрики

Приоритет postfix ++ и prefix ++ в C / C ++

В C / C ++ приоритет Prefix ++ (или Prefix -) имеет более высокий приоритет, чем оператор разыменования (*), а приоритет Postfix ++ (или Postfix -) выше, чем и Prefix ++, и *.

Если p является указателем, тогда * p ++ эквивалентен * (p ++), а ++ * p эквивалентен ++ (* p) (оба префикса ++ и * ассоциативно правы).

Например, программа 1 печатает «h», а программа 2 печатает «e» .

// Программа 1
#include<stdio.h>

int main()

{

  char arr[] = "geeksforgeeks";

  char *p = arr;

  ++*p;

  printf(" %c", *p);

  getchar();

  return 0;

}

Выход:

  h

// Программа 2
#include<stdio.h>

int main()

{

  char arr[] = "geeksforgeeks";

  char *p = arr;

  *p++;

  printf(" %c", *p);

  getchar();

  return 0;

}

Выход:

  e

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Приоритет postfix ++ и prefix ++ в C / C ++

0.00 (0%) 0 votes