将指针设置为int值
Set pointer to int value
当我试图将指针的值设置为int
时,编译器为什么会抱怨?在我的系统中,int
的大小与指针的大小相同。我的int
包含一个我想将指针设置到的地址。
int addr = 0xffff;
std::uint8_t* ptr = addr;
为什么在没有铸造addr
的情况下这是不可能的?编译器是想阻止我朝自己的脚开枪吗?
int
不是std::uint8_t*
。C++是一种类型安全的语言。
相关文章:
- 在类 (C++) 之外设置 const int 成员变量
- 类中的 C++ int 被设置为值,似乎不知从何而来
- 查找不在标准中的第一个值::设置<int>最小-最大值
- Qt 原子 int 获取并立即设置
- 如何检查 int 中是否恰好设置了一位?
- 无法从JNI设置Java Int数组字段
- 将标准:设置为<int> jintArray
- C++:无法在按位函数后将 int 类型设置为非标量
- 在循环中设置指向 int 值的指针
- 错误C4430:丢失类型指定词 - 假设INT.注意:C 不支持对我的构造函数的默认设置
- C++:Unordered_map.template(char,int)未设置所需的值
- 无法使用 pair<int、int> 作为 STL 中设置C++键
- 使用强制转换和设置填充将 int 值更改为时间
- 如何将数组的一部分从 int 转换为浮点数并将值设置为另外两个数组
- 在字符串中设置一个等于 int + "," 的某个字母
- 如何在C 中的结构内设置一个int数组
- 将 std::vector<int> 设置为一个范围
- 如果我将 int 设置为等于 2 个最大整数的总和会发生什么
- 如何在C++中将 const int 设置为最大值
- 转换 map<int C++,请将<int>>设置为 map<int, 矢量<int>>