私のプログラムに非常に奇妙な問題があり、助けて欲しいと願っています。私は本当に基本的な機能を持っています。一方はもう一方を呼び出し、戻り値intが必要です。C++ Visual Studio Express - 返り値の割り当てに失敗する
機能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);
したがって、わかりやすくするために、メッセージ「一致」が表示されたら、その作業を行っていると言います。
'if'の中に' return'があります。あなたは 'if'の外に' return'を見逃していませんか? – chr
変数XとYが他の場所で宣言されていても、まだこの関数のスコープ内にある場合は、代わりにそれらをテストします。 'X'は' x'と同じではないことに注意してください! – Showtime
デバッガを使って値をチェックするなどしてください。 – JohnPS