#include
#include
void main()
{
int *i;
i=(int *)malloc(sizeof(int));
*i=
*(i+
printf(
printf(
}
輸出的結果是
這個程序編譯通過
首先通過malloc
i指向的地址是
但是地址
正確的做法是
#include
#include
void main()
{
int *i;
i=(int *)malloc(sizeof(int));
*i=
i=(int *)realloc(i
*(i+
printf(
printf(
}
realloc 可以對給定的指針所指的空間進行擴大或者縮小
所以
p = (int *) realloc (p
甚至
int* p = (int *) realloc (
這一行
int* p = (int *) malloc(sizeof(int) *
『附注
char型在兩個編譯器裡是一樣的
calloc與malloc相似
char* p;
p=(char*)calloc(sizeof(char)
這個例子與上一個效果相同
From:http://tw.wingwit.com/Article/program/SQL/201311/11184.html