2011-04-17 65 views
0

我想在堆中聲明一個新的整數,改變尖的價值整數用C

int *intPtr = (int*) malloc(sizeof(int)); 

如何更改堆中空間的價值,這*intPtr點? 感謝

+0

您可能會覺得這很有用:http://boredzo.org/pointers/ – ChrisWue 2011-04-17 08:40:09

+0

還有[Binky指針](http://cslibrary.stanford.edu/104/)。 – pmg 2011-04-17 10:30:30

回答

3

提領intPtr

所有的
*intPtr = 0; 
3

首先,你不需要投malloc的結果。 malloc返回一個void *,void *被隱式地轉換成任何指針(int *,char *,...)。

所以:

int *intPtr = malloc(sizeof(int)); 

你也可以這樣寫:

int *intPtr = malloc(sizeof *intPtr); 

如果你想改變由IntPtr的指向的值,只需使用引用操作 '*',如:

*intPtr = <new_value> 

你的新手在哪裏泰格價值。