Mam problem z użyciem typu long double, popatrzcie:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void main()
{
long double y=2.1234567890123456789;
int pola, miejsca;
printf("Podaj ilosc pol: \n");
scanf("%d",&pola);
printf("\nPodaj ilosc miejsc po przecinku: \n");
scanf("%d",&miejsca);
printf("%*.*f\n",pola,miejsca,y);
system("pause");
}
Gdy używam zwykłego double, wszystko działa (tj. wyświetla liczbę z żądaną precyzją). Gdy jest long double, wyświetla się -0 (z żądaną precyzją ;)). Co jest źle?