1. 程式人生 > >關於C語言中的Complex(復數類型)和imaginary(虛數類型)

關於C語言中的Complex(復數類型)和imaginary(虛數類型)

http 個人 time 編譯 pop oat float environ real

關於C語言中的Complex(復數類型)和imaginary(虛數類型)

其實這裏的復數complex就是數學裏的復數,包含實部和虛部兩個部分,比如:x=2.1+6i,下面進行詳細介紹。

C99 新增了復數類型(_Complex)和虛數類型(_Imaginary)。簡單來說,C99 提供了三種復數類型:float _Complex,double _Complex,和 long double _Complex。對於 float _Complex類型的變量來說,它包含兩個 float類型的值,一個用於表示復數的實部(real part),另一個用於表示虛部(imaginary part)。類似地,double _Complex 包含兩個 double類型的值。C99 也提供了三種虛數類型:float _Imaginary,double _Imaginary,以及 long double _Imaginary。虛數類型只有虛部,沒有實部。

包含標準頭文件 complex.h 後,我們就可以用 complex來代表 _Complex,用imaginary來代表 _Imaginary,以及用 I來代表虛數單位 i,也就是 -1的平方根。例如:

#include <complex.h>

double _Complex x = 5.2;

double complex y = 5.0 * I;

double complex z = 5.2 – 5.0 * I;

註意:_Complex類型對於獨立式環境(freestanding environment)來說是可選的。可選的意思是,不強制必須支持這種類型。而所謂獨立式環境,是指 C 程序可以在沒有操作系統的情況下運行。_Imaginary類型在任何環境下都是可選的。目前的編譯器對這兩種類型的支持都不太好,在此就不對這兩種類型進行更深入的討論了

轉自http://blog.csdn.net/zxxssdsd/article/details/9948817,僅個人學習使用。

關於C語言中的Complex(復數類型)和imaginary(虛數類型)