隱藏空格符號(hào) 代碼中的注釋和空行會(huì)占用代碼空間嗎?
代碼中的注釋和空行會(huì)占用代碼空間嗎?這種問(wèn)題,第一是看C語(yǔ)言的標(biāo)準(zhǔn)怎么定義的,第二是看編譯器是怎么處理的。例如,ANSI C語(yǔ)言標(biāo)準(zhǔn),對(duì)注釋的定義如下:簡(jiǎn)單地解釋下:除了在一個(gè)字符常量,字符串或者一個(gè)
代碼中的注釋和空行會(huì)占用代碼空間嗎?
這種問(wèn)題,第一是看C語(yǔ)言的標(biāo)準(zhǔn)怎么定義的,第二是看編譯器是怎么處理的。例如,ANSI C語(yǔ)言標(biāo)準(zhǔn),對(duì)注釋的定義如下:簡(jiǎn)單地解釋下:除了在一個(gè)字符常量,字符串或者一個(gè)注釋中,/* 這兩個(gè)字符會(huì)引進(jìn)一個(gè)注釋,直到遇到 */除了在一個(gè)字符常量,字符串或者一個(gè)注釋中,// 這兩個(gè)字符會(huì)引進(jìn)一個(gè)注釋,直到遇到一個(gè)斷行符,但斷行符本身不認(rèn)為是注釋的一部分第三部分就是各種例子了。但是在實(shí)際編譯過(guò)程中,還得看編譯器是不是完全采用這些標(biāo)準(zhǔn)。或者,對(duì)于標(biāo)準(zhǔn)未定義的情況,也是得看編譯器的實(shí)際實(shí)現(xiàn)。例如,有些編譯器處理注釋時(shí),是將 /**/ 全部移除,而有些編譯器會(huì)在移除后,添加一個(gè)空格。那么下面的情況,顯然是無(wú)法成功編譯的。in/**/t i例如,有些編譯器可以在 / **/ 里再嵌套一個(gè) /**/,而有些編譯器卻不行。書上說(shuō)可以,其實(shí)只是在講,不考慮那些奇奇怪怪的情況??偟膩?lái)講,這些情況大概知道就行了,平時(shí)基本上不會(huì)遇到這些奇奇怪怪的情況的,咱又不參加C語(yǔ)言混亂代碼大賽。