2

メイン関数を短くしようとしています。私はいくつかの質問に答える必要があります (それぞれの質問の中で何行ものコードがあり、メインで宣言された変数を使用する必要があります)すべての質問内で、配列ではなく、さまざまなタイプの変数を多数使用してください。私の英語で申し訳ありません。必要なものを説明するのは難しいです。

これは疑似コードと混合された私のコードです(簡略化)

int
main(void)
{
    int x = 4;
    int y = 5;
    float z = 6.8; // And lot of more variables like this

    answer_1;  //pseudocode
    answer_2:  

    return 0;
}

// answer1 の内部には、変数 x、y、z などの値を示す printf がたくさんあります)

// answer1 内には、変数 t、i、l などの値を示す printf がたくさんあります)

4

3 に答える 3

1

投稿したコードサンプルを使用して、xを渡す最良の方法は、関数の引数として使用することです。

void func(int x);

int main(void)
{
    int x = 4;
    func(x);
    return 0;
}

void func(int x)
{
    printf("X = %d", x);
}

これが実際のコードで機能しない場合は、もっと長い例を投稿できますか?

于 2012-10-27T15:54:03.577 に答える
0

これらの変数を関数に渡したくない場合は、次のいずれかを実行できます。

  • 変数をグローバルとして宣言すると、すべての関数で変数にアクセスできます。
  • GCCの入れ子関数機能を使用します(http://gcc.gnu.org/onlinedocs/gcc/Nested-Functions.htmlを参照)。ただし、この機能はGCC専用であるため、ポータブルプログラムでは使用しないでください。
于 2012-10-27T15:56:54.660 に答える
0

「別の関数内の関数」を使用してみてください

関数 main には、他の 2 つの関数が含まれます。最初に変数を定義してから、関数本体を記述します。

于 2012-10-27T17:29:16.167 に答える