c99
支援數**算中的複數。1999
年標準介紹了複數浮點型別及提供複數函式的擴充套件數學庫,這些函式宣告在complex.h
中,包含例如三角函式csin(),ctan()
等等。
乙個複數z
可以在笛卡兒座標系中使用z=x + y*i
表示,其中x
和y為實數,i
是乙個虛構的單位,以以下等式定義:i
2= -1
。x 稱做z
的實數部分,y
稱做z的虛數部分。 在c
中,乙個複數由一對浮點值來做為它的實數部分和虛數部分,兩部分具有相同的資料型別,為float
、double
或long double,
因此,有三類的複數浮點型別: l
float _complex
ldouble _complex
llong double _complex
這些型別中的每乙個都具有相同的大小和佇列(像陣列一樣有兩個元素,型別為float
、double
或long double).
標頭檔案complex.h
定義了巨集complex
和i,巨集complex
的近義詞,巨集i
表示虛構單位i ,
並有型別const float _complex:
#include // ... double complex z = 1.0 + 2.0 * i; z *= i; // rotate z through 90° counterclockwise around the origin.
C核心技術手冊(十七)
c99 支援數 算中的複數。1999 年標準介紹了複數浮點型別及提供複數函式的擴充套件數學庫,這些函式宣告在 complex.h 中,包含例如三角函式 csin ctan 等等。乙個複數 z可以在笛卡兒座標系中使用 z x y i 表示,其中x和 y為實數,i是乙個虛構的單位,以以下等式定義 i2 ...
C核心技術手冊(二十七)
4.1.5 算術型別轉換結果 由於不同的型別有不同的目的 特性和侷限性,將乙個型別轉換為另一型別通常要處理這些差異,通常,乙個型別轉換後的值取決於目標型別的特性。4.1.5.1 bool 型別轉換 任何標量型別可被轉換為 bool,結果為0i.e.當標量值為 o時,使用 false 當標量值為 1時...
C核心技術手冊(二十七)
4.1.5 算術型別轉換結果 由於不同的型別有不同的目的 特性和侷限性,將乙個型別轉換為另一型別通常要處理這些差異,通常,乙個型別轉換後的值取決於目標型別的特性。4.1.5.1 bool 型別轉換 任何標量型別可被轉換為 bool,結果為0i.e.當標量值為 o時,使用 false 當標量值為 1時...