# [[C++]] Only makes sense with raw arrays ## Increment (`++`) and Decrement (`--`) Operators - Point to neighboring addresses in memory - considers size of data type - if 4 byte int, will increment by 4 addresses ## Addition and Subtraction - increment/decrement pointer by `n * sizeof(type)` ```cpp // increment int_ptr += n; // or int_ptr = int_ptr + n; // decrement int_ptr -= n; // or int_ptr = int_ptr - n; ``` - Subtracting pointers - Determines number of elements between pointers - must point to same data type ## Comparison (`==`. `!=`) - Determine if two pointers point to same location - does ***not*** compare data where they point - value can be the same, but in different location - Determine if pointers have same value - [[Dereferencing|Dereference]] pointers, then compare - `*score_ptr++` operates right to left - increments pointer, then dereferences - `(*score_ptr)++` - dereferences pointer, then increments dereferenced value