C 程式設計/complex.h
外觀
< C 程式設計
(重定向自 C 程式設計/C 參考/complex.h)complex.h 是一個頭檔案,定義了複數運算的功能。[1] 這些函式使用內建型別 complex,該型別在 C 的 C99 修訂版中引入。
不應將此標頭檔案與 C++ 標準庫標頭檔案 <complex> 混淆,後者以完全不同的方式實現複數(作為模板類,complex<T>)。
通用宏
- complex - _Complex 的別名
- _Complex_I - 常量,其型別為 "const float _Complex",值為虛數單位 I,I*I=-1
僅為相容 `C99 Annex G` 的編譯器模式定義 - 虛數型別的原生支援(這非常罕見,因為 Annex G 在數學上是錯誤的[2])
- imaginary - _Imaginary 的別名
- _Imaginary_I 展開為型別為 const float _Imaginary 的常量表達式,其值為虛數單位。
I 的通用別名
- I - 如果定義了 _Imaginary_I,則為 _Imaginary_I 的別名,否則 - 為 _Complex_I 的別名
應用程式可以在干擾內部值的情況下取消定義 complex、imaginary 和 I 宏。
complex.h 中宣告的每個函式都有三個版本,每個版本都使用不同的浮點型別(double、float 和 long double)。這裡只列出了每個函式的 double 版本;要使用 float(或 long double)版本,請在函式名稱後面新增 f(或 l,分別)(例如,cabsf 和 cabsl)。
請注意,所有角度均以弧度為單位。
- 基本運算
| cabs | 計算絕對值 |
| carg | 計算複數的引數 |
| cimag | 計算複數的虛部 |
| creal | 計算複數的實部 |
| conj | 計算複共軛 |
| cproj | 計算複數到黎曼球面的投影 |
- 指數運算
| cexp | 計算復指數 |
| clog | 計算複對數 |
| csqrt | 計算復平方根 |
| cpow | 計算複數冪 |
- 三角運算
| csin | 計算復正弦 |
| ccos | 計算復餘弦 |
| ctan | 計算復正切 |
| casin | 計算復反正弦 |
| cacos | 計算復反餘弦 |
| catan | 計算復反正切 |
- 雙曲運算
| csinh | 計算復雙曲正弦 |
| ccosh | 計算復雙曲餘弦 |
| ctanh | 計算復雙曲正切 |
| casinh | 計算復雙曲反正弦 |
| cacosh | 計算復雙曲反餘弦 |
| catanh | 計算復雙曲反正切 |
- ↑ : 複數運算 – 基本定義參考,單一 UNIX® 規範,來自開放組的第 7 版
- ↑ Dr. Dobb's 雜誌:面向專業程式設計師的軟體工具,第 27 卷 "Annex G 中的許多結果純粹是發明,在數學上是不正確的"