Неявное объявление функции "время" [-Wimplicit-function-declaration] | - программирование
Подтвердить что ты не робот

Неявное объявление функции "время" [-Wimplicit-function-declaration] |

Всякий раз, когда я пытаюсь использовать функцию srand, я получаю это предупреждение

"implicit declaration of function 'time' [-Wimplicit-function-declaration]|" 

и отчет об ошибках Windows появляется, когда выполняется скомпилированный файл,
Я новичок в программировании, я нашел это в учебнике, но это не работает для меня.

  srand (time());  
  int x= (rand()%10) +1;  
  int y= (rand()%10) +1;  
  printf("\nx=%d,y=%d", x,y); 

Что мне нужно, чтобы исправить это?

4b9b3361

Ответ 1

Вы должны убедиться, что вы #include правильные заголовки, в данном случае:

#include <stdlib.h>  // rand(), srand()
#include <time.h>    // time()

В случае сомнений проверьте страницы руководства:

$man rand

$man time

Еще одна проблема: time() требует аргумент, который может быть NULL, поэтому ваш вызов srand() должен быть:

srand(time(NULL));

Ответ 2

Обратите внимание, что функция time() использует текущее время (выраженное в секундах с 1970 года) как в возвращаемом значении, так и в его аргументе адреса.