我正在做一些只适用于 2s 补码 CPU 的小玩意。我想在代码中添加一个 static_assert,以防万一。(Wikipedia Ones 的补码页面说只有一些 Univac 机器仍然使用 1s 补码,但我想偏执一下。)这段代码是防弹的、符合标准的、合理的吗?
static_assert(~0 == -1, "2s-complement CPU required");
// note the tilde versus the minus sign
我无法使用 1s-complement 机器。有没有人愿意测试这个?