更改 C 中指向整数的值
我想在堆中声明一个新的整数,
int *intPtr = (int*) malloc(sizeof(int));
如何更改*intPtr
指向的堆中空间的值? 谢谢
I want to declare a new integer in the heap,
int *intPtr = (int*) malloc(sizeof(int));
How do I change the value of the space in the heap, to which *intPtr
points to?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
取消引用intPtr:
Dereference
intPtr
:首先,您不需要强制转换 malloc 的结果。 malloc 返回 void* 并且 void* 隐式转换为任何指针(int*、char*、...)。
所以:
你也可以这样写:
如果你想改变 intPtr 指向的值,只需使用取消引用运算符 '*' 就像:
哪里是你的新整数值。
First of all, you don't need to cast the result of malloc. malloc returns a void* and the void* is casted implicitly to any pointer (int*, char*, ...).
So :
You can also write :
If you want to change the value pointed by intPtr, just use the dereference operator '*' like :
where is your new integer value.