Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何从位于头文件中的结构访问变量?_C_Struct - Fatal编程技术网

C 如何从位于头文件中的结构访问变量?

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 #包括 #包括 类型

我正在尝试访问位于头文件“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;

那是个愚蠢的错误。感谢您的帮助:)结构没有变量,只有字段(或成员)。