Если вы хотите получить значение с точностью, вы должны объявить R,G,B
как float
или double
, а не как unsigned short
.
И я не уверен, какой тип ошибки вы хотитеполучить из компилятора.Если вы хотите напечатать это заданное значение, если оно выходит за пределы диапазона, вы можете просто сделать это следующим образом:
if(value < 0 && value > 255){
printf("Value is out of range\n");
}
Или если вы хотите выдать ошибку времени выполнения Вы можете сделать это следующим образом:
if(value < 0 && value > 255){
value = value/0;
}
value = value/0
выдаст ошибку времени выполнения, если значение выходит за пределы диапазона.
Если вы хотите узнать больше о создании исключения на языке программирования C, вы можете посмотреть эту ссылку для получения дополнительной информации