Re: [問題] C與C++差異
※ 引述《Carbontube (碳管)》之銘言:
: http://david.tribble.com/text/cdiffs.htm
: 這裡寫的很清處
: 最明顯的 就是
: C89不支持//做註, C99可以
: 不支持區域變數(for(inti = 0;i<n;i++) )
: 並且不能變數一生成就做初使化(int n = 10;)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
以 int n=10; 這個例子來說,C89 C90 C99 C++98 都可以
該網頁裡面舉的例子
是針對
automatic and register variables of aggregate type
(struct, array, or union)'s initializer
是否為 constant expression 來作區別
(編譯器實作則可能自行放寬限制)
節錄網頁:
void foo(int i)
{
float x = (float)i; // Valid C90, C99, and C++
int m[3] = { 1, 2, 3 }; // Valid C90, C99, and C++
int g[2] = { 0, i }; // Invalid C90
}
: 變數要在函式最前面全部宣告好,不能在中間才宣告
: ※ 引述《ffflllyyying (test)》之銘言:
: : 本身是從C開始學習
: : 後來自己在學C++
: : 感覺起來語法大多數還是差不多
: : 一些寫法有一些差異
: : 若扣除寫法差異
: : 他們之前功能的差異
: : 究竟最大的特色是在哪裡?
: : 想請問一下版上的大大們
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.1.38
※ 編輯: UNARYvvv 來自: 218.168.1.38 (06/21 00:19)
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章