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

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

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

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

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

解决方法

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

UINT32 target = source;

对于一些UINT8源码.

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

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...