Użytkownik Łukasz Maśko napisał:

Właśnie mi się niebieski ekran w głowie wyświetlił. Jest taki oto prościutki programik (math.h jest trochę na wyrost, potrzebny w docelowym programie):

$ cat odl.c
#include <stdio.h>
#include <math.h>

int main(int argc, char **argv) {
double d;
scanf("%g",&d);


scanf("%lg",&d);
lub
scanf("%Lg",&d);
dla long double

  printf("%g\n",d);
  return 0;
}
$ gcc odl.c -lm
$ ./a.out
0
4.85473e-270

WTF?! Skąd mu się to bierze? Albo ja głupi jestem, albo czegoś nie widzę, chociaż patrzę na to już jakiś czas.
A teraz uwaga! Jeśli zmienną d zrobię zmienną globalną (przeniosę deklarację przed main), to działa poprawnie!!!




wtedy sie inicjalizuje z zerem

Poratujcie, bo pierwszy raz się z czymś takim spotkałem :-/



-- ./groz

xmpp/mail: <groz at gryf.info>


_______________________________________________ pld-users-pl mailing list pld-users-pl@pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-users-pl

Odpowiedź listem elektroniczym