我想在堆中声明一个新的整数,
int *intPtr = (int*) malloc(sizeof(int));
如何更改*intPtr
指向的堆中空间的值?
感谢
答案 0 :(得分:3)
取消引用intPtr
:
*intPtr = 0;
答案 1 :(得分:3)
首先,您不需要转换malloc的结果。 malloc返回一个void *,void *被隐式地转换为任何指针(int *,char *,...)。
所以:
int *intPtr = malloc(sizeof(int));
你也可以写:
int *intPtr = malloc(sizeof *intPtr);
如果要更改intPtr指向的值,只需使用取消引用运算符'*',如:
*intPtr = <new_value>
您的新整数值在哪里。