你写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…。
这张照片拍摄于2024年,中国女子100米栏运动员吴艳妮和夏...
2025-06-22阅读全文 >>先说结论。 JWT的设计从通用性和功能性角度,是非常合理的。...
2025-06-22阅读全文 >>星际争霸里有个炫技操作:3个机枪兵转轮杀Lurker。 ...
2025-06-22阅读全文 >>两个案例 案例1,pdd买了张显卡,回来查sn码发现生产日期...
2025-06-22阅读全文 >>M2 Max,不插电直接开Pro Tools,一分钟以内可以...
2025-06-22阅读全文 >>