我试图编写一个简单的代码来充当 sizeof (特别是此代码中的 int )。但为什么它显示 1 作为输出?应该是4。
#include<stdio.h>
int SIZEOF(int *);
int main(void)
{
int a;
printf("Size is:%d bytes\n",SIZEOF(&a));
return 0;
}
int SIZEOF(int *p1)
{
int *p2;
p2=p1;
p1++;
return (p1-p2);
}