struct结构体和char型数组的相互转化

    技术2022-07-13  77

    针对内存连续的结构体,把一整段内存拷贝到char数组对应的内存中。考虑4字节对齐!

    struct Test { int a; char b; char c[1024]; unsigned short d; }; char *ch = "abcdefghijklmn1234567890"; char *chTest = new char[2048]; memset(chTest, 0, sizeof(chTest)); Test *t1 = new Test; t1.a = 10; t1.b = -20; strcpy(t1.c, ch); t1.d = 12; //结构体转为char * memcpy(chTest, (char *)t1, sizeof(Test)); //char *转为结构体 Test *t2; t2 = (Test *)chTest;

     

    Processed: 0.009, SQL: 9