thinking C語言flaot值比較

2021-08-29 12:06:10 字數 584 閱讀 7451

最近面試,發現很多基礎的原理都還沒搞懂。自己平時沒有應用或接觸到的知識,也不會想著去學習。但遇到的更多,自己就會去探索的更多。

a == b;//( != ,<,>,<=,>=)
a == true;//false
a. if(a == null);

b. if(a != null);

c. str或mem系列函式;(memcmp,strcmp......)

自己想到2種實現的方法:

4.1 設定乙個值與兩個float型的差的絕對值作比較,當小於或等於這個值的時候,就認為是相等的;

4.2 放**,通過放大float的值再強制轉換成int型作比較;

//1.設定乙個精確值,通過兩個float值相減取它們的絕對值,再和這個精確值比較

int comparefloat()

else

printf("no equal!\n");

return 0;

}

簡單的說明下:fabs()針對浮點數,abs()針對整型。

C的宣告與定義(Thinking C )

1 c的宣告與定義 宣告是告訴編譯器存在某乙個函式或者變數 定義是編譯器為某一名稱的函式或變數分配儲存位址 定義可以包括宣告 宣告常常使用extern關鍵字,不帶函式體的函式自動作為宣告,可以理解為自動加上extern關鍵字。c 函式原型 返回型別 函式名 引數1型別 引數2型別 c 中函式宣告至少...

程式語言(機器語言 組合語言 高階語言)

直接對硬體操作的語言,由多個0 1構成的。是低階語言底層。組合語言同機器語言一樣直接對硬體操作。組合語言雖麻煩,但是所能完成的操作不是一般高階語言能夠實現的。且生成的可執行檔案小,執行速度快 高階語言所編制的程式不能直接被計算機識別,必須經過轉換才能執行。按轉換方式又分為以下兩類 編譯類和解釋類語言...

程式語言 指令碼語言 標記語言

用於向計算機發出指令,讓程式設計師能夠準確地定義計算機所需要使用的資料和採取的行動。具有主動性。為了縮短傳統的 編寫 編譯 鏈結 執行 edit compile link run 過程而建立的計算機程式語言,一般都是以文字形式存在,類似於一種命令.通常是解釋執行而非編譯。指令碼語言通常都有簡單 易學...