有人能帮忙指出指针使用的问题所在吗?代码示例如下:
在第36行:workMode->current = workMode->intend;
这行代码没有覆盖/改变值。
如果我改成这样:*workMode->current = *workMode->intend;
出现这样的错误error: invalid type argument of unary '*' (have 'int')
代码如下/* Enum */
typedef enum
{
enWorkMode_0 = 0,
enWorkMode_1 = 1,
enWorkMode_2 = 2,
enWorkMode_3 = 3,
} WorkingModes_e;
/* Structure */
typedef struct
{
WorkingModes_e current;
WorkingModes_e intend;
} WorkModeObj_t;
/* Variable */
WorkModeObj_t workModeObj;
/* Declare */
void IndicationCheck(WorkModeObj_t *workMode);
/* Main */
int main(void)
{
workModeObj.current = enWorkMode_0;
workModeObj.intend = enWorkMode_1;
IndicationCheck(&workModeObj);
}
/* Function */
void IndicationCheck(WorkModeObj_t *workMode)
{
workMode->current = workMode->intend;
}
|
|