在講“函數與程序結構”這一章中,有這樣一句話:“如果某個函數從一個地方返回時有返回值,而從另一個地方返回時沒有返回值,該函數並不非法,但可能是一種出問題的征兆。”
這句話覺得有些難以理解。
於是寫了段測試代碼,如下:
#include <stdio.h>
int f(int i) {
if (1)
return;
else
return 1;
}
main(void) {
int i = -10;
printf("%d\n", f(i));
}
/*
* 本程序用gcc編譯沒有問題,
* 運行結果如下:
* -10
*/