0
声明場合(ANSI Cのみを使用して)で変数を宣言する方法はありますか?宣言変数(ANSI C)
例:
if(int variable = some_function())
{
return 1;
}
声明場合(ANSI Cのみを使用して)で変数を宣言する方法はありますか?宣言変数(ANSI C)
例:
if(int variable = some_function())
{
return 1;
}
いいえ、あなたはそれを行うことはできません。あなたは何ができるか
はちょうどこの単純なケースのためにあなたがif
の条件としての機能を呼び出すことができることをif
{
int variable;
variable = some_function();
if (variable) return 1;
}
/* variable is out of scope here */
注意(余分な変数は必要ありません)
のためのブロックを作成していますif (some_function()) return 1;
よれ – BLUEPIXY
http://stackoverflow.com/questions/8474100/where-you-can-and-cannot-declare-new-variables-in-c –
Cに許可されていない号 [ANSI C文法](https://www.lysator.liu.se/c/ANSI-C-grammar-y.html#expression)には、if文の文法は「IF」(「式」)です'ステートメント'。 'expression'は' declaration'に解決できないので、あなたの例のようにif文に宣言を入れる方法はありません。 –