La funzione printf
prende un tipo di argomento, come %d
o %i
per un signed int
. Tuttavia, non vedo nulla per un valore lungo
.
Metti una l
(lettera L minuscola) direttamente prima dello specificatore.
unsigned long n;
long m;
printf("%lu %ld", n, m);
Credo che tu voglia dire:
unsigned long n;
printf("%lu", n); // unsigned long
o
long n;
printf("%ld", n); // signed long