LINUX.ORG.RU
Ответ на: комментарий от anonymous

А что, уже бывают курсовики на GTK+?

Нет, это не Job, по теме видно, что он пытается разобраться, но с таким объективно сложным языком как сишка, это не так-то просто.

Моей первой программой на Си была простая реализация метода Рунге-Кутта. Сначала я для утрясания алгоритма написал прототип на паскале. Отладил за вечер. Переписал на Си... и потом НЕДЕЛЮ пытался понять, почему у меня программа работает вроде бы правильно, но при возрастании числа итераций начинает тормозить и в конце концов виснет.

Оказалось: из-за ошибки в справочнике я подключил не тот заголовочный файл. Нравы у компиляторов в 1992 году (DOS, Turbo C) были вольные, компилятор не долго думая сгенерил для ненайденной функции fabs() прототип по умолчанию. Потом компоновщик эту функцию нашёл, но поскольку типы параметров не совпадали, её вызов приводил к порче стека. А поскольку фунция использовалась только при проверке сходимости в конце итерации цикла, это практически ни на что не влияло. Но нервов было потрачено изрядно.

Поэтому когда в треде про очередную версию фрипаскаля кто-нибудь начинает орать «паскаль не нужен, давайте студентам сразу си» - я тихо хихикаю.

ТСу сочувствую.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от hobbit

Нравы у компиляторов в 1992 году (DOS, Turbo C) были вольные, компилятор не долго думая сгенерил для ненайденной функции fabs() прототип по умолчанию.

С тех пор ничего особо не изменилось.

anonymous
()
Ответ на: комментарий от hobbit

Вот вывод:

0x00007ffff799a34e  <gdk_gl_parse_args+238>

Уже пытался отключить OpenGL модуль, и сейчас даже переписал его снова, но ошибка идёт почему то. Хотя при сборке всё отлично.

JoeCrocker
() автор топика
Ответ на: комментарий от hobbit

Моей первой программой на Си была простая реализация метода Рунге-Кутта

Чисто вычислительная задача — это не гуй с 3д. Думаю, Рунге-Кутта тогда не копипастой делались. Да и пара глав K&R, наверное, была пролистана.

ТС же типичный современный школьник/студент. Списывание что бы сдать, без попытки понять списанное. Пофиг, что такое main() и как оно вызывается, на форуме кто-нибудь исправит. Раздельная компиляция — это как-нибудь раскидать по файлам, лишь бы скомпилировалось; объявления-определения — да кому они нужны? Undeclared identifier - это же элементарнейшая ошибка. Но сами не ищем, пусть на форуме народ пальцем ткнет. Можно программировать без строчки кода — все же уже на stackoverflow есть.

JaneDoe
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.