在下面的结构指针示例中
#include<stdio.h>
#include<stdlib.h>
struct siva {
int a;
};
typedef struct siva *s1;
void main()
{
s1 b=(s1)malloc(sizeof(s1*));
b->a=8;
printf("\n The vlue is s1->a is %d",b->a);
free(b);
}
在上面的代码中,变量 b 没有被声明,但是这段代码是如何工作的
在这一行
s1 b=(s1)malloc(sizeof(s1*));
如何为 b 分配内存以及为什么在 sizeof() 中使用 s1*。s1和s1有什么区别