struct结构体指针 *p的大小为什么是整个结构体的大小
#include"stdio.h"intmain(void){structA{chara[9];intb;}B,*p;printf("%d\n",sizeof(B));p...
#include "stdio.h"
int main(void)
{
struct A
{
char a[9];
int b;
}B,*p;
printf("%d\n",sizeof(B));
printf("%d\n",sizeof(p));
printf("%d\n",sizeof(*p));
}
结果为什么 16 4 16
B的大小是16是考虑对齐
指针大小是4也对
但是为什么*p大小16??不应该指向struct A类型的结构体首地址 为1吗 展开
int main(void)
{
struct A
{
char a[9];
int b;
}B,*p;
printf("%d\n",sizeof(B));
printf("%d\n",sizeof(p));
printf("%d\n",sizeof(*p));
}
结果为什么 16 4 16
B的大小是16是考虑对齐
指针大小是4也对
但是为什么*p大小16??不应该指向struct A类型的结构体首地址 为1吗 展开
1个回答
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询