日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

分号是c语言的结束符不是分隔符,分号在C和Pascal中的区别

發布時間:2024/1/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 分号是c语言的结束符不是分隔符,分号在C和Pascal中的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

分號在C和Pascal中的區別

yanlb2000

在C語言和Pascal語言中,都會大量使用分號";"。比如,幾乎每個語句結束之后,都有個分號。

很多人認為,分號是語句的結束符,每個語句都必須以分號來結束,C語言和Pascal語言中都是如此。

比如,記得幾年前看到《電腦報》有一篇介紹Pascal入門的文章,就說,每個語句必須用分號結束。

但這種認識其實是不對的,C和Pascal對分號在語句分隔方面有不同的定義。

C語言規定,分號是語句的結束符。因此,每個語句必須以分號結束。

而Pascal語言規定,分號是語句的分隔符。這就不同了,按此定義,只有在語句之間,才需要用分號分隔。而如果僅僅是一條語句,或者是最后一條語句,那么就沒必要用分號了。事實就是如此。

比如,這樣的代碼是完全正確的。

procedure

TForm1.FormCreate(Sender: TObject);

begin

label1.Caption := 'Hello world.';

label1.Font.Color := clRed

end;

相反,如果在clRed后面加一個分號,嚴格說反而是畫蛇添足的。

理論上說,任何一個begin...end語句塊之間,最后一個語句都沒有必要加分號。

但是,如果加上一個分號又如何呢?一點問題都沒有。

按照Pascal語法,分號是語句分隔符,所以,如果分號后面沒有語句,那其實隱含了是一個空語句,在語法上當然還是允許的。而從實踐上來說,任何一個Pascal語法編譯器都會忽略這種"多余的"分號,將其優化掉,不作處理,也不會報錯。

我寫這些的目的,只是提醒大家,分號的區別。特別是,Pascal語言中分號是語句的分隔符而不是結束符,最后一個語句是不必加分號的。

當然,在實際編程中,完全不必拘泥于這種區別。你喜歡怎么用就怎么用,只要知道理論上有這些區別就可以了。

比如說我,寫Pascal代碼的時候,最后一個語句基本上都是加分號的。原因么:

1,

每個語句結束都加個分號,習慣了。C語言中如此,Pascal中大部分語句還是如此,寫多了,成為習慣是很自然的。

2, 編譯器會將多余的分號忽略,不會造成任何開銷或效率上的損失。

3,

為了以后在原有語句后面再添加點語句的方便。如果原來沒有最后的那個分號,添加語句的時候又不注意,編譯的時候就會出錯,少了個分隔符。雖然馬上能查出來,但畢竟多了點步驟,耽誤些時間。還不如當初就每個語句都加分號,包括最后一個語句。

所以,我對分號的態度是,知道理論上的定義和不同,就可以了。實際使用中不必太拘泥,按各人喜好,實用為上。

總結

以上是生活随笔為你收集整理的分号是c语言的结束符不是分隔符,分号在C和Pascal中的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。