当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
计算机二级:C++运算符优先级列表
发布时间:2010/12/10 15:04:14 来源:www.xue.net 编辑:城市总裁吧
     Precedence Operator Description Example Associativity
  1 ()
  []
  ->
  .
  ::
  ++
  -- Grouping operator
  Array access
  Member access from a pointer
  Member access from an object
  Scoping operator
  Post-increment
  Post-decrement (a + b) / 4;
  array[4] = 2;
  ptr->age = 34;
  obj.age = 34;
  Class::age = 2;
  for( i = 0; i < 10; i++ ) ...
  for( i = 10; i > 0; i-- ) ... left to right
  2 !
  ~
  ++
  --
  -
  +
  *
  &
  (type)
  sizeof Logical negation
  Bitwise complement
  Pre-increment
  Pre-decrement
  Unary minus
  Unary plus
  Dereference
  Address of
  Cast to a given type
  Return size in bytes if( !done ) ...
  flags = ~flags;
  for( i = 0; i < 10; ++i ) ...
  for( i = 10; i > 0; --i ) ...
  int i = -1;
  int i = +1;
  data = *ptr;
  address = &obj;
  int i = (int) floatNum;
  int size = sizeof(floatNum); right to left
  3 ->*
  .* Member pointer selector
  Member pointer selector ptr->*var = 24;
  obj.*var = 24; left to right
  4 *
  /
  % Multiplication
  Division
  Modulus int i = 2 * 4;
  float f = 10 / 3;
  int rem = 4 % 3; left to right
  5 +
  - Addition
  Subtraction int i = 2 + 3;
  int i = 5 - 1; left to right
  6 <<
  >> Bitwise shift left
  Bitwise shift right int flags = 33 << 1;
  int flags = 33 >> 1; left to right
  7 <
  <=
  >
  >= Comparison less-than
  Comparison less-than-or-equal-to
  Comparison greater-than
  Comparison geater-than-or-equal-to if( i < 42 ) ...
  if( i <= 42 ) ...
  if( i > 42 ) ...
  if( i >= 42 ) ... left to right
  8 ==
  != Comparison equal-to
  Comparison not-equal-to if( i == 42 ) ...
  if( i != 42 ) ... left to right
  9 & Bitwise AND flags = flags & 42; left to right
  10 ^ Bitwise exclusive OR flags = flags ^ 42; left to right
  11 | Bitwise inclusive (normal) OR flags = flags | 42; left to right
  12 && Logical AND if( conditionA && conditionB ) ... left to right
  13 || Logical OR if( conditionA || conditionB ) ... left to right
  14 ? : Ternary conditional (if-then-else) int i = (a > b) ? a : b; right to left
  15 =
  +=
  -=
  *=
  /=
  %=
  &=
  ^=
  |=
  <<=
  >>= Assignment operator
  Increment and assign
  Decrement and assign
  Multiply and assign
  Divide and assign
  Modulo and assign
  Bitwise AND and assign
  Bitwise exclusive OR and assign
  Bitwise inclusive (normal) OR and assign
  Bitwise shift left and assign
  Bitwise shift right and assign int a = b;
  a += 3;
  b -= 4;
  a *= 5;
  a /= 2;
  a %= 3;
  flags &= new_flags;
  flags ^= new_flags;
  flags |= new_flags;
  flags <<= 2;
  flags >>= 2; right to left
  16 , Sequential evaluation operator for( i = 0, j = 0; i < 10; i++, j++ ) ... left to right
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved