美文网首页
结构体中的偏移量

结构体中的偏移量

作者: yuanCruise | 来源:发表于2019-08-06 22:40 被阅读0次
  • 结构体中的偏移量,如下图所示,age的首地址减去结构体的首地址等于64,以此类推。
#define  _CRT_SECURE_NO_WARNINGS 
#include <stdlib.h>
#include <string.h>
#include <stdio.h>

//一旦结构体定义下来,则结构体中的成员..内存布局 就定下了
// 可以通过 age地址 .去 求 大的结构体的内存地址
typedef struct AdvTeacher
{
    char name[64]; //64
    int age ;  //4
    int p; //4
    char *pname2;

}AdvTeacher;


void main61()
{
    int i = 0;
    AdvTeacher  t1;
    AdvTeacher *p = NULL;
    //strcpy(0, "dddd");
    p - 1 ; //编译通过 运行通过 这句话 在cpu中计算
    p - 2;
    p - 3;

    p - p;

    {
        int offsize = (int)&(p->age);
        printf("%d \n", offsize);

    }
    
    printf("hello...\n");
    system("pause");
    return ;
}


void main()
{
    int i = 0;
    AdvTeacher  t1; // & (t1.age)
    AdvTeacher *p = NULL;
    p = &t1;
    //p = p + 100;
    //strcpy(0, "dddd");
    //p - 1 ; //编译通过 运行通过 这句话 在cpu中计算
    //p - 2;
    //p - 3;

    
    {
        int offsize1 =   (int)&(p->age) - (int)p; // & (t1.age)
        int offsize2 = (int )&(((AdvTeacher *)0)->age );
        printf("offsize1:%d \n", offsize1);
        printf("offsize2:%d \n", offsize2);

    }

    printf("hello...\n");
    system("pause");
    return ;
}

相关文章

  • C语言结构体大小的计算方式

    定义 结构体中的偏移量 结构体中的偏移量是一个成员的实际地址和结构体首地址之间的距离。 结构体大小计算 结构体大小...

  • C语言结构体大小计算

    定义 结构体中的偏移量 结构体中的偏移量是一个成员的实际地址和结构体首地址之间的距离。 结构体大小计算 结构体大小...

  • 结构体中的偏移量

    结构体中的偏移量,如下图所示,age的首地址减去结构体的首地址等于64,以此类推。

  • 结构体的基本操作

    结构体定义和初始化 结构体变量相互赋值 结构体数组 结构体嵌套一级指针 结构体嵌套二级指针 结构体偏移量 联合体 ...

  • 笔试题总结

    32位机器上,以下结构的sizeof(P)为 /*考察结构体对齐和填充: 结构体每个成员相对于结构体首地址的偏移量...

  • 笔试题目记录

    32位机器上,以下结构的sizeof(P)为 /*考察结构体对齐和填充: 结构体每个成员相对于结构体首地址的偏移量...

  • 结构体地址对齐解释

    重要 三条原则:一、结构体变量中成员的偏移量必须是成员大小的整数倍(0被认为是任何数的整数倍)二、结构体大小必须是...

  • 预处理,const,sizeof

    1.宏定义 用宏定义去求一个结构体struct里某个变量相对struct的偏移量。要求偏移量首先struct a;...

  • 结构体内存对齐

    想要计算结构体大小,必须先掌握结构体内存对齐规则: 1.第一个成员在与结构体变量偏移量为0的地址处。2.其他成员变...

  • 结构体

    结构体定义* 结构体中的格式:* struch 结构体名* {* 结构体成员变量* }* 结构体中的特点* 1.结...

网友评论

      本文标题:结构体中的偏移量

      本文链接:https://www.haomeiwen.com/subject/aivgdctx.html