无法访问指针C 的值
Unable to access value of a pointer c++
int *x = new int;
*x = 5;
cout << x << endl;
delete[] x;
我试图将资源分配给变量" x"。然后,我为其分配值" 5"。当我尝试打印" x"的值时,我会得到一些称为0x8321的垃圾值,依此类推。我确定这不是我分配的价值。
知道我如何访问x的值?
您必须使用std::cout << *x << std::endl
。
您获得的值是指向指向的内存(区域)的地址。
编辑:并使用delete x;
代替delete[] x;
。
您当前正在打印指针的地址。如果您想要价值,应该做 cout << *x << endl
相关文章:
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 指针没有更新它在void函数内部指向的值
- 使用基类指针调用基类的值构造函数的语法是什么?
- 如果我在指针中使用 ++ 操作数,我的值就会出错
- VkSurfaceKHR 指针的值在函数调用后更改,无需任何显式赋值
- "this"指针的值在对象的生存期内是否恒定?
- 如何读取指针的值,因为这个指针是函数的返回?
- 谁拥有作为指向 Windows API 函数的指针传递的值?
- 函数从指针 c++ 中获取错误的值并返回错误的答案
- 更改队列指针成员的值需要在 C++ 中出现奇怪的错误
- 为什么下面的代码段返回指针指向的值而不是指针的地址?
- C++指针中的这两种类型的值分配有什么区别?
- 如何从另一个嵌套类中调用某个封闭类的嵌套类的函数指针成员的值?
- 尝试设置唯一指针布尔数组的值时BAD_ACCESS错误
- 使用指针显示数组的值
- 使用指针访问数组的值
- C++ - 更新指针中的值被覆盖
- 如何在C++中使用 void* 在指针作为对方法的引用传递时保存uint32_t的值
- SFINAE - 检测类型 T 是指针、数组还是带有随机访问运算符的容器,以及给定的值类型
- 在 C/C++ 中,是否可以通过使用指针更改"important"内存地址的值来创建简单的恶意软件?