language: C (gcc-4.7.2)
date: 983 days 10 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
#include <assert.h>
#include <stdio.h>
 
int main () {
    int x = -2;
    int y = x >> 1;    // arithmetic shift.
    assert (y == -1);
    int z = (unsigned)x >> 1;  // logical shift.
    assert (z == 0x7FFFFFFF);
    return 0;
}