我有嵌套结构,并且在为不同函数中的内部结构分配值时遇到问题。我的结构定义为:
typedef struct {
double reading;
float readingTime;
int readingNum;
} Measurement;
typedef struct {
Measurement vref;
Measurement vout;
Measurement voutShort;
} Unit;
measureUnit()
在我声明Unit unit;
我调用的函数 ( ) 中takeMeasurement(unit)
(为了清楚起见,我在下面简化了)并且我尝试将值分配给内部 Measurement 结构中的某些值:
takeMeasurement(Unit unit){
int readingNum = 42;
unit.vout.readingNum = readingNum;
}
然后,当我尝试访问printData(Unit unit)
从中调用的这些值时measureUnit()
,
`printf("%i", unit.vout.readingNum)`
总是打印0
。
这些值不应该unit
通过不同的功能“跟随”吗?