将int转换为uint8_t

时间:2013-07-26 13:21:23

标签: c int type-conversion uint8t

是将int值转换为uint8_t的正确方法:

int x = 3; 
uint8_t y = (uint8_t) x;

假设x永远不会小于0.尽管gcc没有给出上述行的任何警告,我只是想确定它是否正确或是否有更好的转换方法int到uint8_t?

P.S。如果你打算建议一个标准函数,我在Linux上使用C

1 个答案:

答案 0 :(得分:12)

这是正确的,但没有必要演员:

uint8_t y = (uint8_t) x;

相当于

uint8_t y = x;
在上面的声明中初始化之前,

x被隐含地转换为uint8_t