如何检查int变量是否包含合法(而不是陷阱表示)值?

如何检查int变量是否包含合法(而不是陷阱表示)值?

上下文:

这主要是对另一个问题的跟进。OP想猜测变量是否包含int,我的第一个想法是,在C(如C++)中,int变量只能包含int值。埃里克·波斯特皮奇尔提醒我,对于int类型,每个标准都允许陷阱表示.

当然,我知道大多数现代系统只使用整数的2-补表示,不使用填充位,这意味着无法观察到陷阱表示。尽管如此,这两个标准似乎仍然允许3种符号类型的表示:符号和大小,一个补充和两个补充。至少C18草案(类型的n2310 6.2.6表示)可以为其他字符类型提供填充位。

问题

因此,在可能的填充位或非二补符号表示的上下文中,int变量可能包含用于一致性实现的陷阱值。是否有可靠的方法确保int变量包含有效值?

相关推荐

喝酒厉害的6个省份,一天几乎三顿酒,看看有你家乡吗?
为选区添加描边_ps怎么给选区加上虚线描边
百特365下载

为选区添加描边_ps怎么给选区加上虚线描边

📅 08-06 👁️ 5897
中国电信怎么退订流量套餐 详细步骤教程
365bet提款规则

中国电信怎么退订流量套餐 详细步骤教程

📅 08-15 👁️ 2223