C - 将值插入到结构中

标签 c struct

我正在尝试将值插入到结构中,以便稍后可以再次显示它们。

typedef struct {
    char* displayname;
    char* name;
} objectHolder;

void registerObject(char* displayname, char* name) {
    objectHolder->displayname = displayname;
    objectHolder->name = name;

    char buffer[70];
    sprintf(buffer, "%s spawned", displayname);

    menu.drawFeedNotification(buffer, "Object Spawner");
}

但这返回了我:

source/main.cpp:82:17: error: expected unqualified-id before ‘->’ token
     objectHolder->displayname = displayname;
                 ^
source/main.cpp:83:17: error: expected unqualified-id before ‘->’ token
     objectHolder->name = name;

我尝试更换 ->但这也没有完成任务。我在 Google 上找不到有关如何正确执行此操作的结果。如有任何帮助,我们将不胜感激。

最佳答案

您有两个问题。

第一个是语法,其中“箭头”-> 用于指向结构的指针

另一个问题是objectHolder不是一个实际的结构实例,它不是一个变量。它是一个类型名称。结构类型的别名。您使用objectHolder来声明和定义结构的变量。

关于C - 将值插入到结构中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49352301/

相关文章:

go - 解码 json 响应结构为空

swift - 我如何使用 UserDefaults 来保存和加载我的结构?

c - 错误 :"pointer being realloc' d 未分配”在 macOS 上,但在 Windows 上尝试重新分配两次时有效

c - 使用 strtok() 在 c 中将字符串标记两次

c# - 是否可以从 List<T> 访问结构体的引用来进行更改?

c++ - 类中的结构

使用 DLL 的循环队列,全局声明的指针未正确初始化

objective-c - C和Objective-C中返回地址的内存分配

java - 重构 (C) 伪代码以删除 goto

c - C 中的 Trie 树上的段错误和 Valgrind 未堆叠地址错误