结构 sizeof 无法编译

问题描述

我试图创建两个结构,一个是主结构,他有指向第二个结构的指针。 当我尝试在 main 中使用 sizeof 时,它说“无法打开文件 C:/...”

typedef struct virus {
    int time;
    zol* x;
};

typedef struct zol {
    int y;
};

void main()
{
    printf("%d",(int)sizeof(virus));
}

解决方法

引用的错误消息(大概)是代码中编译错误的结果。下次发布错误时,请发布第一条错误消息,而不是最后一条。

这是更正的代码。您的代码的主要问题是您在定义它之前使用了 zol,它应该是相反的。还缺少 printf 的头文件并且 typedef 是错误的。

#include <cstdio>

struct zol {
    int y;
};

struct virus {
    int time;
    zol* x;
};

int main()
{
    printf("%d\n",(int)sizeof(virus));
}