Funkcia printf
prijíma typ argumentu, napríklad %d
alebo %i
pre signed int
. Nevidím však nič pre hodnotu long
.
Vložte l
(malé písmeno L) priamo pred špecifikátor.
unsigned long n;
long m;
printf("%lu %ld", n, m);
Myslím, že máte na mysli:
unsigned long n;
printf("%lu", n); // unsigned long
alebo
long n;
printf("%ld", n); // signed long