铸造积极的' int'到' size_t'

时间:2015-04-06 16:25:08

标签: c++ casting int size-t

size_t和int之间的差异是有据可查的,我概括了一下:前者是某些无符号整数类型的别名,它依赖于实现,而后者是有符号的;前者适用于内存声明,而后者适用于算术运算。

我的问题是,如果我做一些算术计算来给int(它永远不会太大而且总是正的)并将它分配给size_t变量(用于访问数组位置),那么任何可能出现问题的情况?

1 个答案:

答案 0 :(得分:5)

将签名类型分配给无符号类型始终定义良好(即使对于负值)。如果有符号变量不大于无符号类型,并且只有非负数,则在这种转换中该值不会改变。