ポインタ「p」の型を変換したい。はじめに、ポインタ p の型は void です。4 バイトのメモリを割り当てた後、ポインタ型を「int」にキャストしますが、これは機能しません。たぶん、文p=(int *)p
は機能しません。
理由を教えてください。問題を解決してください。ありがとうございます。
コーディング:
#include<stdio.h>
#include <stdlib.h>
int main(void)
{
void *p;
p=malloc(sizeof(int));
if(p == NULL)
{
perror("fail to malloc");
exit(1);
}
p=(int *)p;
*p=100;
printf("the value is : %d\n",*p);
return 0;
}