返回bool的函数无return时返回true还是false
#include <stdio.h>bool f(){}int main(){if(f())printf("default return true!\n");elseprintf("default return false!\n");}代码如上:
结果是什么?
在vs2008下,会是
default return true!
在gcc下,(gcc version 4.3.4 20090804 (release) 1 (GCC))
会是
default return false!
不同编译器返回的不同。
个人粗心犯了这个错误,当然我们写这种返回bool类型的函数时要覆盖所有分支。
页:
[1]