Deci piticul, aha 

void functie(unsigned long int numar){ /* afiseaza numarul */ }
...mai jos...
unsigned char x;
x=0;
functie(x); // Aici se afiseasza o aberatie.
char dec[10]; //String to store decimal conversion. Least significant digit is index 0.
char int2dec(unsigned long num){ //Human readable conversion from long int. Return value is most significant non-zero character.
dec[9]=num/1000000000+48;
dec[8]=(num%1000000000)/100000000+48;
dec[7]=(num%100000000)/10000000+48;
dec[6]=(num%10000000)/1000000+48;
dec[5]=(num%1000000)/100000+48;
dec[4]=(num%100000)/10000+48;
dec[3]=(num%10000)/1000+48;
dec[2]=(num%1000)/100+48;
dec[1]=(num%100)/10+48;
dec[0]=num%10+48;
signed char i=9;
while((dec[i]==48) & (i>0)) i--;
return(i);}
De-aia durează 5 ani să faci o aplicație cât de cât, că trebuie să reinventezi tot, inclusiv trecând prin toate bug-urile pe care le-au rezolvat alții timp de 50 de ani. Dar e ok, așa te asiguri că aplicația e greu de modificat și îți dai ceva de lucru pentru alți 10 ani...N-am si nu vreau sa #include nimic.