当前位置:  开发笔记 > 编程语言 > 正文

编译器是否应该将bool中的任意非零值正确解释为true?

如何解决《编译器是否应该将bool中的任意非零值正确解释为true?》经验,为你挑选了0个好方法。
如何解决《编译器是否应该将bool中的任意非零值正确解释为true?》经验,为你挑选了0个好方法。

Bool应该转换为1表示真值,否则为0.但是,它没有说明它们实际上如何存储在内存中.如果我在bool中存储任意非零值会发生什么?标准是否保证在将其转换为整数时的正确行为?

例如,给定以下程序,

#include 

int main()
{
  bool b;
  memset( &b, 123, sizeof( b ) );

  return b;
}

标准是否保证程序将返回1?

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有