### Operands

Most expressions can contain several different, but related, types of operands. The following type classes described related types of operands.

integral | Character objects and constants, objects having an enumeration type, and objects having the types short, int, long, long long, unsigned short, unsigned int, unsigned long, or unsigned long long.
arithmetic | Integral objects listed above, and objects having the types float, double, long double, and long float.
scalar | Arithmetic objects listed above, and pointers to any object type. Also C++ references.
aggregate | Arrays, structures, and unions. Also C++ classes.

Many operators cause conversions from one data type to another.

Integral Promotions
Standard Type Conversions
Arithmetic Conversions

Arithmetic Conversions
Arithmetic Conversions for extended Level C