當前位置:首頁 > 公眾號精選 > C語言編程
[導讀]初學者階段編程時,編寫基本語句可能會有隱含錯誤的方式,基本語句主要針對if、for、while、goto、switch等,它們看似簡單,但使用時隱患比較多,本文歸納了使用語句的一些規(guī)則和建議?;菊Z句編程舉例if語句if語句是C/C語言中最簡單、最常用的語句,然而很多編程人員用隱...

初學者階段編程時,編寫基本語句可能會有隱含錯誤的方式,基本語句主要針對if、for、while、goto、switch等,它們看似簡單,但使用時隱患比較多,本文歸納了使用語句的一些規(guī)則和建議。

基本語句編程舉例

  • if語句

if語句是C /C語言中最簡單、最常用的語句,然而很多編程人員用隱含錯誤的方式寫if語句,本文以“與零值比較”為例,進行討論。

(1)布爾變量與零值比較:不可將布爾變量直接與TRUE、FALSE或者1、0比較。根據(jù)布爾類型的語義,零值為“假”(記為FALSE),任何非零值都是“真”(記為TRUE)。TRUE的值究竟是什么并沒有統(tǒng)一的標準,

例如VC 將TRUE定義為1,而VB則將TRUE定義為-1。

假設布爾變量名為flag,它與零值比較的標準if語句如下

if(flag)//表示flag為真
if(!flag) //表示flag為假

其他的用法都屬于不良風格,例如:

if(flag == TRUE)
if(flag == FALSE)
if(flag == 1 )
if(flag == 0 )

(2)整型變量與零值比較:應當將整型變量用“==”或“!=”直接與0比較。假設整型變量的名字為value,它與零值比較的標準if語句如下:

if(value == 0)
if(value != 0)

不可以模仿布爾變量的風格而寫成:

if(value)
if(!value) //會讓人誤解value是布爾變量

(3)浮點變量與零值比較:不可以將浮點變量用“==”或“!=”與任何數(shù)字比較。

千萬留意,無論是float還是double類型的變量,都有精度限制,所以一定要避免將浮點變量用“==”或“!=”與數(shù)字比較,應該設法轉化成“>=”或“<=”形式。假設浮點變量的名字為x,應該將

if(x == 0.0) //隱含錯誤的比較

轉化為

if((x >= -EPSINON)
本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

現(xiàn)在網(wǎng)上有很多播放量巨高的免費編程項目教程,很多學編程的同學可能都看過,就導致大家可能寫在簡歷上的內容都差不多。

關鍵字: 項目 編程 簡歷

最近看到APP上,給我推送了很多類似的回答,借此機會,也想著重新審視一下自己的學習歷程,以及結合自身和大牛,分享一些學習經(jīng)驗,希望對大家有所啟發(fā)和幫助。

關鍵字: APP 嵌入式 C語言

SQLite是一個跨平臺的輕量級數(shù)據(jù)庫,支持C/C++開發(fā),可用于嵌入式中,關于C/C++使用SQLite的簡單實例,可參考這篇:“玩轉SQLite6:使用C語言來讀寫數(shù)據(jù)庫”,本篇來繼續(xù)介紹SQLite的基礎運算符與表...

關鍵字: SQLite C語言 數(shù)據(jù)庫

北京2022年9月29日 /美通社/ -- 近日,猿編程創(chuàng)始人李翊接受了《中國信息技術教育》雜志專訪?!吨袊畔⒓夹g教育》雜志由教育部主管、中央電化教育館等單位主辦,刊登專訪文章《人工智能教育普惠重在與校園實際結合 --...

關鍵字: 人工智能 創(chuàng)始人 編程 智能教育

為增進大家對PLC的認識,本文將對PLC編程的技巧予以介紹。

關鍵字: PLC 指數(shù) 編程

一直以來,機器人都是大家的關注焦點之一。因此針對大家的興趣點所在,小編將為大家?guī)砑{米機器人的相關介紹,詳細內容請看下文。

關鍵字: 納米機器人 機器人 編程

在計算機科學中,內存泄漏指由于疏忽或錯誤造成程序未能釋放已經(jīng)不再使用的內存。

關鍵字: C語言 內存泄漏

C語言使用函數(shù)調用,我們再熟悉不過了,但是函數(shù)調用在內存中究竟發(fā)生了什么真的清楚嗎?只有搞清楚內存里的內幕,才算完全搞懂函數(shù)的調用。

關鍵字: C語言 函數(shù)調用

有個粉絲關于條件編譯的問題,程序一直編譯報錯。我整理了關鍵的部分,下面代碼是頭文件中的定義。

關鍵字: 條件編譯 C語言

首先要看英文和C語言的關系,有多大層度是需要英文的支持。我們都知道C語言中一共有32個關鍵詞,控制語句僅有9種,也就是說只需要掌握以上內容就可以對C語言進行應用,對于一些復雜的指針等更合英文沒有關系。我相信短短的32個關...

關鍵字: C語言

C語言編程

178 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉