gpt4 book ai didi

objective-c - 在 uint8_t * 和 char * 之间转换。会发生什么?

转载 作者:太空宇宙 更新时间:2023-11-04 01:40:43 27 4
gpt4 key购买 nike

在这两个字符之间转换时会发生什么?在 C99 Objective-C 中。

最佳答案

在这个答案中,我假设 char 在您的系统上是 8 位。

如果您的体系结构使用 unsigned char 作为 char 类型,那么绝对不会发生任何事情。

如果您的体系结构使用 signed char 作为 char 类型,则 char 的负值将回绕,从而可能导致意外结果。然而,这永远不会发生在终止空字符上。


请注意,通过“强制转换”实际上并没有发生任何事情,您只是告诉编译器以不同方式解释内存中的某个位置。这种解释上的差异会产生类型转换的实际(副作用)。

关于objective-c - 在 uint8_t * 和 char * 之间转换。会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5957154/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com