加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 10:41:33 所属栏目:百科 来源:网络整理
导读:我有一个UINT8类型的值,我想把它作为UINT32. 我的以下代码是否会被认为是正确,有效,高效和安全的? UINT32 convU8toU32(UINT8 *number) { UINT32 result = *number; return *result;} 请注意,我是来自Java世界的C的新角色. 解决方法 函数是正确的(返回*结果
我有一个UINT8类型的值,我想把它作为UINT32.

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

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

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

解决方法

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

UINT32 target = source;

对于一些UINT8源码.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读