C语言中,指针变量里存储的是地址,请问怎样把一个已知的地址值赋给一个指针变量?

2025-03-23 13:27:06
推荐回答(5个)
回答1:

(1)首先你要看你已知的地址是什么类型变量的地址,然后你就定义一个基类型对应的指针变量,比如 int a,*p;
p=&a;
保证p与a为同一类型。
(2)由于malloc生成的地址为void类型,所以将malloc生成的地址要进行强制类型转换,转换成跟p相同的类型即可,比如 int *p; p=(int *)malloc(sizeof(int));
malloc生成的空间大小可以由你自己指定,如果你想把生成的地址空间存放整型量,就可以像我这样指定,同理如果你想存放单精度实型量的地址,就可以这样写:float *p; p=(float *)malloc(sizeof(float));
你看看会不会对你有所帮助!

回答2:

(1)首先你要看你已知的地址是什么类型变量的地址,然后你就定义一个基类型对应的指针变量,比如 int a,*p;
p=&a;
保证p与a为同一类型。
(2)由于malloc生成的地址为void类型,所以将malloc生成的地址要进行强制类型转换,转换成跟p相同的类型即可,比如 int *p; p=(int *)malloc(sizeof(int));
malloc生成的空间大小可以由你自己指定,如果你想把生成的地址空间存放整型量,就可以像我这样指定,同理如果你想存放单精度实型量的地址,就可以这样写:float *p; p=(float *)malloc(sizeof(float));

回答3:

直接将返回值给P赋值就行

回答4:

char *pt=NULL;
pt=(char*)malloc(N*sizeof(变量类型));

回答5:

char *p