微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

你如何在C中将UINT8转换为UINT32?

我有一个UINT8类型的值,我想把它作为UINT32.

我的以下代码是否会被认为是正确,有效,高效和安全的?

UINT32 convU8toU32(UINT8 *number) {
  UINT32 result = *number;
  return *result;
}

请注意,我是来自Java世界的C的新角色.

解决方法

函数是正确的(返回*结果中的*的错误;除了),但你甚至不需要它.整数(和其他整数类型)隐式转换为另一个,并且由于UINT32可以表示UINT8可以拥有的每个值,您可以简单地写

UINT32 target = source;

对于一些UINT8源码.

使用static_cast显式转换是可选的;如果转换(可能)缩小,则演员会使一些编译器警告静音.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐