你写uint32,然后str真有4个G以上长度的时候你就老实了。
写c/c++最最基本的一件事:比较两个数的时候,请务必尽可能保证这两个数类型一致。
如果一定要不一致,那你千万当心。
要不然不知道有多少屎要去踩。
就你这个例子,strlen返回值就是size_t,64位系统里他就是有可能返回大于4G的值,那么如果你用uint,比较32和64的时候隐式转换为64,32转64的数字永远不可能大于4G,喜提无限循环。
这不是格局不格局的问题,str长度大于4…。
你写uint32,然后str真有4个G以上长度的时候你就老实了。
写c/c++最最基本的一件事:比较两个数的时候,请务必尽可能保证这两个数类型一致。
如果一定要不一致,那你千万当心。
要不然不知道有多少屎要去踩。
就你这个例子,strlen返回值就是size_t,64位系统里他就是有可能返回大于4G的值,那么如果你用uint,比较32和64的时候隐式转换为64,32转64的数字永远不可能大于4G,喜提无限循环。
这不是格局不格局的问题,str长度大于4…。
三月初鸿蒙智行悬赏五百万打击黑公关,这才三个月就有至少七八位...
2025-06-24阅读全文 >>腰突的痛苦50%来自身体,50%来自内心,有时内心的痛苦甚至...
2025-06-24阅读全文 >>有时候身高高的女生确实有点没市场 我本人净身高178 对我有...
2025-06-24阅读全文 >>一般来说民办高校的学费要比公办高校高不少,一年9.6万贵吗?...
2025-06-24阅读全文 >>曾经你在电视机上看过的电视剧, 现在全世界可能不到10个人拥...
2025-06-24阅读全文 >>