以下では、13が印刷されると予想しました。
int である 1 つの配列メンバーのサイズだけ arr (配列からの int 値が格納されるメモリへのポインター) を移動したかったのです。
代わりに 45 が出力されます。そのため、配列メンバー全体のジャンプを 1 回行う代わりに、5 番目の配列メンバーが取得されます。なんで?
int arr[] = {1,13,25,37,45,56};
int val = *( arr + 4 ); //moving the pointer by the sizeof(int)=4
std::cout << "Array Val: " << val << std::endl;