LINUX.ORG.RU

GCC и io.h

 ,


0

1

Здравствуйте. Изучаю программирование в институте, пользуюсь ubuntu. Задача на бинарные файлы. Задан файл F, состоящий из записей. Каждая запись содержит название книги, автора и год издания. Удалить из файла все записи, содержащие сведения о книгах заданного автора. Вот код. Ругается на io.h. В linux я новичок, найти решение самостоятельно не смог. Спрашивал преподавателя, он сказал, что io.h это стандартная dos-утилита. http://paste.org.ru/?c07cua



Последнее исправление: orkimed (всего исправлений: 2)

Не знаю, что за io.h. В твоём коде ничего особенного не используется. Для начала задай себе вопрос: что за io.h и какие именно функции тебе оттуда нужны?

DELIRIUM ☆☆☆☆☆
()

Никак не удается спрятать под спойлер

paste.org.ru

I-Love-Microsoft ★★★★★
()

Попробуй просто убрать инклуд этого io.h и посмотри, что скажет компилер. Или поищем, чем можно заменить то, что используется оттуда, или вообще соберётся без него.

gavlig ★★★
()
Ответ на: комментарий от orkimed

А, ну так погугли, чем это в линуксе делается.

gavlig ★★★
()

он сказал, что io.h это стандартная dos-утилита

Предложи, кстати, ему эвтаназию. Он уже безнадёжно устарел.

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от orkimed

препод не оценит твоих усилий, поставь какой-нибудь dosbox и пользуйся компилятором 80-х годов, который знает твой препод и на котором нормальные студенты сделают эту лабораторную. учи алгоритмы а не страдай херней, впереди еще десятилетия прогресса, которые ты хочешь просто перескочить.

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

Это расширение Borland C++ и лет ему больше, чем тебе. Забей и ищи аналоги.

Twissel ★★★★★
()

Если ты изучаешь C++ (судя по тегу), а не С, то используй, во-первых, ООП, а во-вторых стандартную библиотеку C++. Для решения описанной задачи в ней всё есть. А то, что по ссылке, похоже на порнографию - недоси с винтиками от C++. Сначала люди учатся писать вот такой вот шлак, а потом ходят и рассказывают всем какой плохой «этот ваш» C++.

asaw ★★★★★
()

io.h - не является частью стандарта. Как тут писали, он вхож в поставку компилятора от студии и борланд це++. Я плюсую совет за взятие старого компилера под досбокс. Алгоритмы качай, а не трахайся с тулчейном. Тем более препод твой увидит то что ему не знакомо и обозлится еще. З.Ы.: Заодно английский подтяни чтоли, ну и просто чтобы ты знал - линейный поиск - это решение только для задачи уровня этой лабораторки, в реальной жизни не юзай такой подход, ну наверное скоро про графы расскажут.

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

агоритмы качать можно с помощью вполне себе современных средств разработки. они позволяют концентрировать внимание именно на алгоритмах, а не на реализации в ОС времён раннего палеозоя. я ещё помню, что такое io.h, он был во времена компиляторов моего детства. но мне-то уж почти 40 лет. а для современных студентов это... какбэ так сказать помягче? некрофилия прям какая-то.

плюсую предложение выше, насчёт эвтаназии. любой маломальски уважающий себя программист должен постоянно обновлять свои знания. в том числе и в отношении современных систем, компиляторов и библиотек. а если он этого не делает, то его за километр нельзя подпускать к преподаванию. а то он такого напреподаёт! а потом выпускники таких ВУЗов придут на реальные предприятия и тут-то и выяснится, что они вообще нихрена не умеют. так что учить нужно на примерах из реального современного мира, а не на мумиях из 80-х.

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)

Изучаю программирование в институте
Спрашивал преподавателя, он сказал, что io.h это стандартная dos-утилита

Беги оттуда - я серьезно. Трата времени и возможно денег.

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

а потом выпускники таких ВУЗов придут на реальные предприятия и тут-то и выяснится

Уже не первый год таких вижу. В феврале с бывшего таганрогского радика на практику приехать должны. Третий курс. Понятия не имею, что с ними делать: они ни С не знают, ни схемотехники, ни английского… АСУшники, блин!

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

препод не оценит твоих усилий

Это смотря какой препод. Думаю, что нормальный оценит, если он принесёть решение на потоках.

Но это, естественно, в том случае, если решение будет своё, а не скопипащенное откуда-то. А так - скопипастил - не разобрался - показал - получил ответ по методичке, ничего удивительного.

anonymous
()

И ты это... определись, на чём ты пишешь - C или C++. Это два разных языка, вообще-то. А в твоём исходнике дикая помесь первого и второго. То, что компилятор позволяет их смешивать, не означает, что так нужно делать. ОСОБЕННО в учебной задаче! Например, есть #include <iostream> - это вроде бы C++, но потоки из него ты нигде не используешь, работаешь через сишные FILE.

Если всё же C++, осиль ifstream, ostream и ввод-вывод через << и >>. Преподу объясни, что написал кроссплатформенный код - без хамства, без зазнайства, скромно предложи решение.

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

Да ты сам, очевидно, ничего не знаешь. Иначе тебя бы просто не было в том месте, где нужно возиться с таганрогскими оболтусами.

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

Если всё же C++, осиль ifstream, ostream и ввод-вывод через << и >>.

Неудобно же.

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