C 结构创建错误未命名类型

标签 c struct

我只是想在没有太多 C 知识的情况下建立一个简单的递归结构(必须以某种方式学习)

这是我的编译行

g++ -o cs533_hw3 main.c

这是我的代码

typedef struct Node Node;

struct Node
{
    int texture;
    float rotation;
    Node *children[2];
};

Node rootNode;
rootNode.rotation

这是我在最后一行的错误

error: 'rootNode' does not name a type

最佳答案

代码必须在 C 的函数中。您可以在全局范围内声明变量,但不能在此处放置语句。

更正示例:

typedef struct Node Node;

struct Node
{
    int texture;
    float rotation;
    Node *children[2];
};

Node rootNode;

int main(void)
{
    rootNode.rotation = 12.0f;
    return 0;
}

关于C 结构创建错误未命名类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15392059/

相关文章:

c - 我做错了什么?下面的代码不会将结构化数据的最后一条记录从 .dat 文件复制到 C 中的另一个 .dat 文件

c - 预处理器中的地标和非地标标记?

c++ - 计算内存消耗

json - 如何在 Golang 结构中使用 omitempty 标志更新 Mongodb 字段

c - C链表问题

带有可变参数的 C printf 说明符。未定义的行为在哪一点上有问题?

c - 使用条件运算符找到两个数字中最小的数字

c - 类型定义/结构声明

c - 使用指针访问结构内部的结构

c - "__attribute__((packed, aligned(4))) "是什么意思