B.2 <complex.h> (C99) 

Um auch mit komplexen Zahlen rechnen zu können, wurden mit dem C99-Standard komplexe Gleitpunkttypen eingeführt und um mathematische Funktionen erweitert. Jede der hier aufgelisteten Funktionen gibt es in drei Versionen. Jede dieser Versionen arbeitet mit einem anderen Gleitpunkttyp (float, double, long double). Wenn Sie die float- bzw. long double-Version verwenden wollen, brauchen Sie beim Funktionsnamen nur ein f bzw. l anhängen.
Funktion | Berechnet... |
double cabs(double complex z); float cabsf(float complex z); long double cabsl( long double complex z); |
Gibt den absoluten Wert einer komplexen Zahl zurück. |
double complex cacos( double complex z); float complex cacosf( float complex z); long double complex cacosl( long double complex z); |
... den inversen Cosinus einer komplexen Zahl. |
double complex cacosh( double complex z); float complex cacoshf( float complex z); long double complex cacoshl( long double complex z); |
... den inversen hyperbolischen Cosinus einer komplexen Zahl. |
double carg(double complex z); float cargf(float complex z); long double cargl( long double complex z); |
... das Argument einer komplexen Zahl. |
double complex casin( double complex z); float complex casinf( float complex z); long double complex casinl( long double complex z); |
... den inversen Sinus einer komplexen Zahl. |
double complex casinh( double complex z); float complex casinhf( float complex z); long double complex casinhl( long double complex z); |
... den inversen hyperbolischen Sinus einer komplexen Zahl. |
double complex catan( double complex z); float complex catanf( float complex z); long double complex catanl( long double complex z); |
den inversen Tangens einer komplexen Zahl. |
double complex catanh( double complex z); float complex catanhf( float complex z); long double complex catanhl( long double complex z); |
den inversen hyperbolischen Tangens einer komplexen Zahl. |
double complex ccos( double complex z); float complex ccosf( float complex z); long double complex ccosl( long double complex z); |
den Cosinus einer komplexen Zahl. |
double complex ccosh( double complex z); float complex ccoshf( float complex z); long double complex ccoshl( long double complex z); |
den hyperbolischen Cosinus einer komplexen Zahl. |
double complex cexp( double complex z); float complex cexpf( float complex z); long double complex cexpl( long double complex z); |
die natürliche Exponentialfunktion für eine komplexe Zahl. |
double cimag(double complex z); float cimagf(float complex z); long double cimagl( long double complex z); |
Gibt den Imaginärteil einer komplexen Zahl zurück. |
double complex clog( double complex z); float complex clogf( float complex z); long double complex clogl( long double complex z); |
den natürlichen Logarithmus einer komplexen Zahl. |
double complex conj( double complex z); float complex conjf( float complex z); long double complex conjl( long double complex z); |
Gibt die Konjugierte einer komplexen Zahl zurück. |
double complex cpow( double complex x, double complex y); float complex cpowf( float complex x, float complex y); long double complex cpowl( long double complex x, long double complex y); |
die Potenz einer komplexen Zahl. |
double complex cproj( double complex z); float complex cprojf( float complex z); long double complex cprojl( long double complex z); |
die Projektion einer komplexen Zahl. |
double creal(double complex z); float crealf(float complex z); long double creall( long double complex z); |
Gibt den Realteil einer komplexen Zahl zurück. |
double complex csin( double complex z); float complex csinf( float complex z); long double complex csinl( long double complex z); |
den Sinus einer komplexen Zahl. |
double complex csinh( double complex z); float complex csinhf( float complex z); long double complex csinhl( long double complex z); |
den hyperbolischen Sinus einer komplexen Zahl. |
double complex csqrt( double complex z); float complex csqrtf( float complex z); long double complex csqrtl( long double complex z); |
die Wurzel aus einer komplexen Zahl. |
double complex ctan( double complex z); float complex ctanf( float complex z); long double complex ctanl( long double complex z); |
den Tangens einer komplexen Zahl. |
double complex ctanh( double complex z); float complex ctanhf( float complex z); long double complex ctanhl( long double complex z); |
den hyperbolischen Tangens einer komplexen Zahl. |
Für geplante Erweiterungen der Headerdatei <complex.h> sind jetzt schon die Funktionsnamen cerf(), cerfc(), cexp2(), cexpm1(), clog10(), clog1p(), clog2(), clgamma() und ctgamma() mitsamt den entsprechenden Suffixen f und r reserviert.
Ebenfalls in der Headerdatei <complex.h> sind folgende Makros definiert:
Makro | Beschreibung |
complex |
ein Synonym für _Complex |
_Complex_I |
ein Synonym für const float _Complex mit dem Wert des imaginären Anteils |
imaginary1) |
ein Synonym für _Imaginary |
_Imaginary_I1) |
ein Synonym für const float _Imaginary mit dem Wert des imaginären Anteils |
I |
Ein Synonym für _Complex_I oder _Imaginary_I. Ist _Imaginary_I nicht definiert, wird automatisch _Complex_I verwendet. I steht somit für den imaginären Anteil. |
1) Die Makros imaginary und _Imaginary_I müssen nur definiert sein, wenn die Implementation imaginäre Typen unterstützt. |
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.