编辑代码

#include <stdio.h>

typedef struct testBase_ {
        char a;
        char b;
} testBase;

typedef struct testData_ {
        int first;
        char second[3];
        testBase name;
} testData;

void test_assignment(testBase* dest) {
    testBase tmp = {'s', 'b'};
    *dest = tmp;
}

int main () {
    //JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
    printf("Hello world!     - c.jsrun.net.\n");
    testBase sky = {'z', 7};
    testData coo = {2023, "Hi", sky};
    printf("sky address: %x \n", &sky);
    printf("sky : %d \n", sky.a);

    printf("coo address: %x \n", &coo);
    printf("coo.first address: %x \n", &coo.first);

    printf("coo.name address: %x \n", &coo.name);
    printf("coo.name.a address: %x\n", &coo.name.a);

    testBase sk2;
    test_assignment(&sk2);
    printf("sk2: a: %c\n", sk2.a);
    printf("sk2: b: %c\n", sk2.b);
    
    return 0;
}