相关疑难解决方法(0)

我可以将unsigned char转换为char,反之亦然吗?

我想使用一个期望这样的数据的函数:

void process(char *data_in, int data_len);
Run Code Online (Sandbox Code Playgroud)

所以它只是处理一些字节.

但是当谈到原始字节时,我更习惯使用"unsigned char"(它在某种程度上"感觉"更适合处理正0到255的值),所以我的问题是:

我可以随时安全地传入unsigned char *此功能吗?

换一种说法:

  • 是否保证我可以随意地在char和unsigned char之间转换(强制转换),而不会丢失任何信息?
  • 我可以安全地转换(强制转换)指向char和unsigned char的指针,而不会丢失任何信息吗?

额外奖励:C和C++的答案是否相同?

c c++

56
推荐指数
3
解决办法
5万
查看次数

标签 统计

c ×1

c++ ×1