"delay" no esta en dos.h?

Mikuyo
15 de Abril del 2005
Antes de nada un saludo pues es la primera vez que posteo aqui, querria que me resolvieseis una duda que tengo:
Pues siempre crei que la funcion "delay" estaba en la declaracion/prototipo "dos.h", y ahora resulta que tengo el Turbo C++ 4.5 para win y todo muy bien... hasta que meto la funcion "delay" (con "dos.h" declarado anteriormente, of course) y me aparece el siguiente mensaje:
"Call to function 'delay' with no prototype in function main"

Si alguien me puede ayudar, soy todo oidos... ejem queria decir "ojos". ;-)

Un saludo a todos

Alejandro_
15 de Abril del 2005
en particular, la funci贸n delay es propia de los viejos compiladores de Borland para el viejo DOS de 16 bits... y aunque ya nadie los use seriamente, siguen siendo muy populares en el 谩mbito escolar.
Si necesitas una forma de "delay" en tu programa Windows, puedes usar la funci贸n Sleep(milisegundos) que se encuentra en <windos.h>
por ejemplo:

#include <windows.h>
//... ...
Sleep(1000); /* detiene la ejecuci贸n 1 segundo */
//...

La ventaja sobre los viejos "delay()" es que no mantiene ocupado al sistema in煤tilmente, sino que suspende la ejecuci贸n de tu proceso durante el tiempo especificado, sin ocupar el procesador para eso.

Hazte un favor, cambia de compilador (y de profesor).

Alejandro

Zion 2099
15 de Abril del 2005
la funcion sleep si es funcional solo que la unidad de tiempo son segundos, asi que es recomendable poner sleep (1.5) aproximadamente o depende de lo que se desee

Ah! por cierto
sleep esta dentro de la libreria dos.h no en windows.h
Saludos :)

Alejandro_
15 de Abril del 2005
Hola Zion; como t煤 dices, sleep() est谩 en el dos.h de Borland y no en windows.h de Windows, pero yo me refer铆a a la funci贸n Sleep() de Windows, no a sleep() de Borland.

Saludos,

Alejandro