0

私は私のプログラムで非常に奇妙な問題を抱えており、あなたが助けてくれることを望んでいます。私は本当に基本的な機能のペアを持っています。一方が他方を呼び出し、returnintが必要です。

完全に不明な理由により、変数への戻り値が変数に割り当てられている場合、条件が真であっても、最初の関数は一致を出力できません。

機能1:

int function1(int posX, int posY){
    int x=1;
    int y=1;
    if (posX == X && posY == Y){        
        printf("Match");
        return 1;
    }
}

機能2:

int i = function1(1, 1);

動作します:

function1(1,1);

明確にするために、「一致」というメッセージが表示された場合は機能していると言っています。

4

1 に答える 1

2
(posX == X && posY == Y)

C/C++ では大文字と小文字が区別されます。「X」と「Y」は何の略ですか?

小文字に変えてみては?

returnまた、一致するものがない場合でも、常に値を試してください(関数function1は値を返すはずintですよね?)


コード : (訂正)

int function1(int posX, int posY){
    int x=1;
    int y=1;

    if ((posX == x) && (posY == y)){     
        printf("Match");
        return 1;
    }

    return 0;
}
于 2012-04-09T01:04:51.583 に答える