if(1==ISfull(board,ROW,COL));
{
return 'Q';
}
return 'C';
上面这个代码在编译的时候,编译器不会报错,但他的返回值恒为’Q’
当时找错误的时候我一头雾水,后来在查找资料后才知道:
if 语句后面不写分号
if()
{
// if 语句后面不写分号,虽然平时也知道,但写代码时可能会不小心打错
}
如果我们写了分号,编译器不会报错,而是会把他当做if的空语句,而继续向下执行,而返回’Q’后,就结束了
eg:(改写下代码)
if(1==ISfull(board,ROW,COL))
;
//上面这个相当于if语句
{
return 'Q';//继续执行
}
return 'C';