[問題] printf的位置

作者: dobeqoo (問候)   2018-04-17 11:55:05
有的compiler竟然讓底下的fun_a build過了, 覺得很驚訝.
一直以為fun_b才是正確的用法.
請問有人知道這些規則訂在哪裡嗎?
int fun_a()
{
printf("this is fun_a \n");
int a=0;
return a++;
}
int fun_b()
{
int a=0;
printf("this is fun_b \n");
return a++;
}
作者: a1u1usul3 (Q-Max)   2018-04-17 12:04:00
printf都沒有分號。過去的標準寫法是宣告放最上面沒錯
作者: crazycy (LCY)   2018-04-17 12:06:00
沒分號都編的過?C99開始都不需要把區域變數宣告在最上面了不過這都1999年的標準了 原PO應該不是問這個吧
作者: kikiqqp (喵食罐頭)   2018-04-17 12:16:00
都沒分號所以都不會過
作者: chuegou (chuegou)   2018-04-17 12:18:00
你是要問段落中宣告?
作者: kyfish (fish)   2018-04-17 13:04:00
然後return a++ 是什麼用意? 原本就要return 0 的嗎
作者: Schottky (順風相送)   2018-04-17 13:18:00
我比較想吐槽 return a++; 你知道 ++ 是什麼意思嗎
作者: johnjohnlin (嗯?)   2018-04-17 13:40:00
感覺就是 C99 啊
作者: Schottky (順風相送)   2018-04-17 14:52:00
C99 或 C++ 都允許這樣寫
作者: dzwei (Cout<< *p << \n ;)   2018-04-17 23:22:00
Sc大想說的/ ++a和a++的區別吧我記得C++的programer才會特別注意這點雖然C的指標偶爾會用到就是了
作者: sppmg (sppmg)   2018-04-19 08:20:00
Sc大是說在此a和a++等價,所以沒必要?
作者: ACMANIAC (請肥宅救救肥宅)   2018-04-20 00:39:00
充行數? 問題根本沒充到行數啊
作者: attis   2018-04-21 08:06:00
Google iso c++ standard 就有c++ 17 draft可以參考了
作者: james80351   2018-04-21 17:00:00
對啊 ++又沒充行數@@

Links booklink

Contact Us: admin [ a t ] ucptt.com