srand((unsigned)time(NULL)); - в течении секунды твое зерно будет одинаковым, а следовательно и все нарисованные точки тоже будут одинаковыми. Функция time возвращает текущее количество секунд в UTC формате. Тебе не стоило писать эту строчку в displayFunction, тебе стоило написать ее в main точно перед glutInit.glutPostRedisplay внутри idle-функции - это правильно, так в GLUT и поступает запрос на перерисовку кадра. Что мне надо сделать? - Отрыть файл.
Какой файл открыть? - Значит или путь файла известен внутри функции, или передается параметром.
Для чего открыть файл: для записи или для чтения? - Видимо или функция должна своими именем об этом говорить, или режим работы с файлом надо передавать параметром.
А что делать с дескриптором открытого в функции файла? - Возвращать, пожалуй.
А что если файл не удалось открыть? - Наверное надо предусмотреть обработку ошибок и возвращать недействительный дескриптор файла.
Зачем мне нужен дескриптор открытого файла? - Чтобы считать оттуда что-либо или записать туда что-либо.
Что мне надо сделать чтобы считать из файла что-либо? - ...
Что мне надо сделать чтобы записать в файл что-либо? - ...
Что мне делать с дескриптором открытого файла когда он больше не нужен? - ...
Но вот вынести в отдельные функции Создание файла, Запись данных и Считывание данных не могу.
glFlush ты говоришь конвейеру форсировать выполнение всех запланированных команд.glFlush является хорошим тоном в ряде случаев. Однако, в документации GLUT сказано что glutSwapBuffers самостоятельно делает вызов glFlush.glutSwapBuffers тебе не нужен. В этом случае достаточно только вызова glFlush. A B();, то ты не переменную B с типом A декларируешь, не что-то там еще. Ты декларируешь функцию B, которая не принимает никаких аргументов, но по значению возвращает объекта типа A.void logic(); - значит ты декларируешь функцию без входных аргументов и возвращаемого значения.logic();. Даже набор русских букв в оперативной памяти на разных процессорах будет выглядеть по -разному
Это даже мне (а я джун) сложно читать.
Но, очень много воды.
Если ты все еще настаиваешь, что эти статьи нужны, то укажи конкретную статью и конкретную цитату, которая даст понимание конкретной вещи
В теле программы, над функцией main
Ну если я правильно понимаю то не const, потому что после инциализации структуры я хочу изменять её элементы
const в этом месте.char - значение можно менять.const char - значение нельзя менять.char* - указатель, который можно менять, на значение, которое можно менять.const char* - указатель, который можно менять, на значение, которое нельзя менять.char* const - указатель, который нельзя менять, на значение, которое можно менять.const char* const - указатель, который нельзя менять, на значение, которое нельзя менять.const char* const* const.const char*. Да и уже просто по смутному смыслу твоих действий в коде, ты не хочешь изменять символы в строке, ты хочешь только указатели на сроки менять.