Bitteschön (In meiner C++ Umgebung läuft es, sollte auch in C laufen)

Code:
//Deklaration der Funktionen
void Schlafen(long milliseconds);
int d2i(double d); // Double --> Integer

void main()
{
Schlafen(1337); //Funktionsaufruf
}

void Schlafen(long milliseconds)
{
long i; //Wiederholungs-variable
long rest; //Was bei der Division übrig bleibt

i = d2i(milliseconds / 250);

rest =  milliseconds - d2i(milliseconds / 250 )*250;

{
int a;
for(a=1;a<=i;a++)
   {
    sleep(250);
   }
}
if(rest!=0){sleep(rest)};
}

int d2i(double d)
{
  return d;
}