Estoy usando el libro Objective-C Programming de Big Nerd Ranch, y comienza haciendo que escribamos en C en los primeros capítulos. En uno de mis programas que me hizo crear, utilizo la función de suspensión. En el libro me decía que pusiera #include <stdlib.h>debajo del #include <stdio.h>papel. Se supone que esto elimina la advertencia que dice "La declaración implícita de la función 'sleep' no es válida en C99". Pero por alguna razón después de que lo puse #include <stdlib.h>, la advertencia no desaparece. Este problema no impide que el programa se ejecute bien, ¡pero solo tenía curiosidad sobre cuál #includenecesitaba usar!
124

Respuestas:
La página del manual de sueño dice que está declarado en formato
<unistd.h>.Sinopsis:
fuente
sleepes una función no estándar.<unistd.h>.Sleepes más bien de<windows.h>.En todos los casos, consulte la documentación.
fuente
esto es lo que uso para un código multiplataforma:
fuente
Porque
sleep()debería serfuente
sleep(3)está enunistd.h, nostdlib.h. Escribaman 3 sleepen su línea de comando para confirmar para su máquina, pero supongo que está en una Mac ya que está aprendiendo Objective-C, y en una Mac, lo necesitaunistd.h.fuente