gpt4 book ai didi

c++ - 为什么从 size_t 转换为 unsigned int 会给我一个警告?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:13:14 29 4
gpt4 key购买 nike

我有代码:

unsigned int length = strlen(somestring);

我正在编译警告级别为 4,它告诉我“从 size_tunsigned int 的转换,当 size_t 时可能丢失数据”是 typedef对于 unsigned int .

为什么!?

编辑:

我刚刚解决了我自己的问题。我是 XP 用户,我的编译器正在检查 64 位兼容性。自 size_t取决于平台,对于 64 位,它将是 unsigned long long , 这与 unsigned int 不同.

最佳答案

因为 unsigned int 在您的机器上是比 size_t 更窄的类型。 size_t 很可能是 64 位宽,而 unsigned int 是 32 位宽。

编辑:size_t 不是 unsigned int 的类型定义。

关于c++ - 为什么从 size_t 转换为 unsigned int 会给我一个警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2570036/

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