c語言規定每條語句以分號結尾,不是以行為單位的,只要可以以空格間隔的代碼中間都可以隨意換行只有宏定義中如果語句太長,寫到一行里太長,不便于查看,可以使用\在正常情況下可以以空格間隔的地方續行。
例子:
int
a
;/*正確*/
#define
a
\
int
a;\
int
b;
/*到上一行都是宏定義內容
相當于
#define
a
int
a;int
b;*/
c/c++都沒有規定標志符的最大長度限制,但是因為具體實現未必能支持,所以又規定了一些具體的實現限制:
c89
規定,編譯器至少應該能夠處理
31
個字符(包括
31)以內的內部標識符(internal
identifier);而對于外部標識符(external
identifier),編譯器至少應該能夠處理
6
個字符(包括
6)以內的外部標識符。
c99
標準規定,編譯器至少應該能夠處理
63
個字符(包括
63)以內的內部標識符;編譯器至少應該能夠處理
31
個字符(包括
31)以內的外部標識符。
具體某個編譯器的實現是多少,需要看編譯器的使用手冊,如vc2010規定c語言的內部標志符和外部標志符的最大長度是247,c++語言的內部標志符和外部標志符的最大長是2048