C 如何从位于头文件中的结构访问变量?
我正在尝试访问位于头文件“header.h”中的结构中的变量C 如何从位于头文件中的结构访问变量?,c,struct,C,Struct,我正在尝试访问位于头文件“header.h”中的结构中的变量New_Id。这是通过名为Main.c的c文件完成的 Header.h #ifndef HEADER.H #define HEADER.H #include <stdio.h> #include <stdint.h> typedef struct { uint32 New_Id; } IdType; Header.h #ifndef头.H #定义HEADER.H #包括 #包括 类型
New_Id
。这是通过名为Main.c的c文件完成的
Header.h
#ifndef HEADER.H
#define HEADER.H
#include <stdio.h>
#include <stdint.h>
typedef struct {
uint32 New_Id;
} IdType;
Header.h
#ifndef头.H
#定义HEADER.H
#包括
#包括
类型定义结构{
uint32新标识;
}IdType;
我正在尝试访问此变量,并通过以下方式从我的C文件“Main.C”中为其赋值
#include <Header.h>
#include <stdint.h>
#include <stdio.h>
void Main (void) {
//code independent of the structure.-----
-----------------------------------//
//Now accessing the structure variable//
IdType.New_id =2;
}
#包括
#包括
#包括
真空总管(真空){
//代码独立于结构-----
-----------------------------------//
//现在访问结构变量//
IdType.New_id=2;
}
然而,出于某种原因,我不明白它一直在说“字段新Id无法解决”。它并没有说这是针对结构本身的。谁能告诉我我做错了什么。在您的代码中,
IdType
本身不是变量,而是数据类型。您需要具有该类型的变量才能访问该结构变量的成员。IdType
是一种数据类型。要访问该变量,您需要创建类型为IdType
的对象,如下所示:
IdType id;
id.New_id=2;
那是个愚蠢的错误。感谢您的帮助:)结构没有变量,只有字段(或成员)。