potentially dangerous if the c++ compiler decides it can use a smaller type.  Should declare it as an int, and then cast it when it is used.