如何解决通过IF语句选择结构
| 我正在尝试使用IF语句选择两个可能的ANSI C表达式之一。每个表达式本身都能正常工作,例如...wb_Parameters *WeightLimits = set100Parameters();
但是当通过IF选择它们时,例如...
if (strcmp(CurrentAircraft->PhenomType,\"100\") == 0)
wb_Parameters *WeightLimits = set100Parameters();
else
wb_Parameters *WeightLimits = set300Parameters();
我收到错误消息\“使用未声明的标识符\'WeightLimits \'。\”我需要做些什么才能使它在IF语句中起作用?
解决方法
在if语句之后,WeightLimits超出范围。为避免这种情况,请在if之前声明它:
wb_Parameters *WeightLimits;
if (strcmp(CurrentAircraft->PhenomType,\"100\") == 0)
WeightLimits = set100Parameters();
else
WeightLimits = set300Parameters();
, 首先声明,然后分配正确的值:
wb_Parameters *WeightLimits = NULL;
if (strcmp(CurrentAircraft->PhenomType,\"100\") == 0)
WeightLimits = set100Parameters();
else
WeightLimits = set300Parameters();
如果不先声明,它将超出范围,无法再使用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。