struct强转可以使用常数地址

Posted fulianzhou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struct强转可以使用常数地址相关的知识,希望对你有一定的参考价值。

#pragma pack(1)
struct TestST

    int bac;
    char* cptr;
    int *iptr;
    char ccc;
    long long lll;
;
#pragma pack

int main(int argc, char* argv[])

    TestST *pTestST = new TestST;
    memset(pTestST, 0, sizeof(TestST));
    printf("pTestST=%ld\\n", pTestST);
    
    printf("sz=%d\\n", sizeof((struct TestST*)pTestST)->cptr);
    printf("offset=%ld\\n", (int)&((struct TestST*)pTestST)->lll);
    printf("sz=%d\\n", sizeof((struct TestST*)11)->cptr);
    printf("offset=%d\\n", (int)&((struct TestST*)12)->lll);
    printf("sz=%d\\n", sizeof((struct TestST*)0)->cptr);
    printf("offset=%d\\n", (int)&((struct TestST*)0)->lll);
    //delete pTestST;
    return 0;

以上是关于struct强转可以使用常数地址的主要内容,如果未能解决你的问题,请参考以下文章

Golang中的struct能不能比较

C语言精要总结-内存地址对齐与struct大小判断篇

C语言精要总结-内存地址对齐与struct大小判断篇

如何使用 inet_pton 和 struct ifreq 从 C 程序设置 IP 地址

如何在 python 中使用“struct”库发送 IPv6 地址

Java 所有对象强转到Object之后,都能够完整的强转回去吗