在 if 语句中声明变量 (ANSI C)
Declare variable in if statement (ANSI C)
有没有办法在if语句中声明变量(使用ANSI C[仅 =20=]) ?
示例:
if(int variable = some_function())
{
return 1;
}
不,你不能那样做。
你可以做的是为 if
{
int variable;
variable = some_function();
if (variable) return 1;
}
/* variable is out of scope here */
请注意,对于这种简单的情况,您可以调用函数作为 if
的条件(不需要额外的变量)
if (some_function()) return 1;
有没有办法在if语句中声明变量(使用ANSI C[仅 =20=]) ?
示例:
if(int variable = some_function())
{
return 1;
}
不,你不能那样做。
你可以做的是为 if
{
int variable;
variable = some_function();
if (variable) return 1;
}
/* variable is out of scope here */
请注意,对于这种简单的情况,您可以调用函数作为 if
的条件(不需要额外的变量)
if (some_function()) return 1;