gpt4 book ai didi

c++ - 对 C++ 中的类型转换感到困惑

转载 作者:太空宇宙 更新时间:2023-11-04 14:36:09 25 4
gpt4 key购买 nike

在 C++ 中,以下几行让我感到困惑:

int temp = (int)(0×00);

int temp = (0×00int);

这两行有什么区别?

最佳答案

两者均无效,因为您使用的是 × 而不是 x:

test.cpp:6: error: stray '\215' in program
test.cpp:6: error: expected primary-expression before "int"
test.cpp:6: error: expected `)' before "int"

但即使解决了这个问题,第二个仍然不是有效的 C++,因为您不能编写 0x00int:

test.cpp:6:13: invalid suffix "int" on integer constant

第一个是有效的(在将× 更改为x 之后)并将值0 赋给temp。不过这里不需要强制转换——你不需要强制转换只是因为常量是用十六进制写的。你可以只写:

int temp = 0x00;

关于c++ - 对 C++ 中的类型转换感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2544896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com