C 複素数と printf 質問する

C 複素数と printf 質問する

複素数を(printfを使って)印刷するにはどうすればよいでしょうか?たとえば、次のコードがあるとします。

#include <stdio.h>
#include <complex.h>
int main(void)
{
    double complex dc1 = 3 + 2*I;
    double complex dc2 = 4 + 5*I;
    double complex result;

    result = dc1 + dc2;
    printf(" ??? \n", result);

    return 0;
}

..代わりにどのような変換指定子 (または何か他のもの) を使用すればよいですか? "???"

ベストアンサー1

printf("%f + i%f\n", creal(result), cimag(result));

C99 複合型には特定のフォーマット指定子はないと思います。

おすすめ記事