我有嵌套的結構體,並且在將值分配給不同函數中的內部結構時遇到困難。我的結構被定義爲:在結構中訪問不同函數中的結構體
typedef struct {
double reading;
float readingTime;
int readingNum;
} Measurement;
typedef struct {
Measurement vref;
Measurement vout;
Measurement voutShort;
} Unit;
在函數(measureUnit()
)其中,I聲明Unit unit;
我請takeMeasurement(unit)
(我簡化了下面的清晰度),並且其中我嘗試將值分配給在內部的測量結構的一些值:
takeMeasurement(Unit unit){
int readingNum = 42;
unit.vout.readingNum = readingNum;
}
當我再嘗試在printData(Unit unit)
這是從measureUnit()
調用來訪問這些值,
`printf("%i", unit.vout.readingNum)`
總是打印0
。
不應該通過不同的功能「跟隨」unit
左右?