为什么a和b在以下代码中共享相同的地址?

bja*_*fly -2 c c++ char

为什么静态断言在这种情况下?由于64位地址线和char是单字节,它们是否在同一地址?

  #include <type_traits>

    int main()
    {
      char a='a';
      char b='b';

      static_assert ( &a == &b, " ERROR: Same addr"  ) ;
    }
    main.cpp: In function ‘int main()’:
    main.cpp:9:3: error: static assertion failed:  ERROR: Same addr
Run Code Online (Sandbox Code Playgroud)

jro*_*rok 6

你有倒退的逻辑.static_assert当条件是false,即两个对象没有相同的地址时触发.