Monday, September 17, 2012

C/C++ escape characters and operator order

Simple note

escape characters

\a: alert bell
\b: backspace
\f: formfeed
\n: newline
\r: return
\t: horizontal tab
\v: vertical tab
\\: backslash
\?: question mark
\': single quote
\": double quote

operator order
1    ::     Scope resolution     Left-to-right
2    ++   --     Suffix/postfix increment and decrement
    ()     Function call
    []     Array subscripting
    .     Element selection by reference
    ?>     Element selection through pointer
3    ++   --     Prefix increment and decrement     Right-to-left
    +   ?     Unary plus and minus
    !   ~     Logical NOT and bitwise NOT
    (type)     Type cast
    *     Indirection (dereference)
    &     Address-of
    sizeof     Size-of
    new, new[]     Dynamic memory allocation
    delete, delete[]     Dynamic memory deallocation
4    .*   ->*     Pointer to member     Left-to-right
5    *   /   %     Multiplication, division, and remainder
6    +   ?     Addition and subtraction
7    <<   >>     Bitwise left shift and right shift
8    <   <=     For relational operators < and ? respectively
    >   >=     For relational operators > and ? respectively
9    ==   !=     For relational = and ≠ respectively
10    &     Bitwise AND
11    ^     Bitwise XOR (exclusive or)
12    |     Bitwise OR (inclusive or)
13    &&     Logical AND
14    ||     Logical OR
15    ?:     Ternary conditional     Right-to-left
    =     Direct assignment (provided by default for C++ classes)
    +=   ?=     Assignment by sum and difference
    *=   /=   %=     Assignment by product, quotient, and remainder
    <<=   >>=     Assignment by bitwise left shift and right shift
    &=   ^=   |=     Assignment by bitwise AND, XOR, and OR
16    throw     Throw operator (for exceptions)
17    ,     Comma     Left-to-right


Reference

http://www.developerz.com/cplusplus_escapesequences.htm
http://en.cppreference.com/w/cpp/language/operator_precedence

No comments:

Post a Comment