Здравствуйте, Maniacal, Вы писали:
M>>Не совсем так. Либа — это типа архива объектников
M>Это от компилятора зависит. В gcc (.a) это архив. В VC++, например, нет.
LVV>>1. Во-первых, Паскаль для обучения и создавался. M>А кто решил, что ЭТО лучше остального способствует обучению?
Никлаус Вирт — неужели ты не в курсе? M>Во времена, когда асм был единственной реальной альтернативой, паскаль был неплох. Но это было овер 30 лет назад
Очень ограниченный взгляд на обучение программированию. M>А может, вы учить не умеете?
Поступай, посмотришь... LVV>>Поэтому мы сначала учим программированию, а потом уже С++... M>Т.е. метод говна и шоколадки?
Программирование для тебя говно?
Что ты делаешь в программировании ???
M>В техникуме сортировал гномиков на паскале, после асма Z80 это не было прорывом, но было чуть-чуть немного удобнее, хотя и не всегда; для спектрума уже не помню кто, но кто-то сделал классный асм со средой в стиле турбо вижн, и это было круто.
Ко мне в 1999 году пришел пацан с химического факультета нашего универа.
И скромненько так говорит: я тут написал среду для программирования на ассемблере, вы посмотрите?
Дело было в MSDOS на IBM PC-286...
Конечно, я посмотрел — и он перевелся к нам на кафедру. M>В институте на первом курсе давали сишечку, и она для меня неплохо зашла M>К началу второго курса распробовал сипипишечку, и она тоже зашла хорошо. Для меня не проблема просто взять и налабать што-то на жаве или на шарпе не слишком сложное — такая обычная рутинная задача для плюсовика, что и говорить тащем-то не о чем.
Сишечка и Спипишечка — это только инструменты, а не программирование. M>Итого: мне пару-тройку лет скармливали говно, называя это обучением программированию
Сочувствую — столько говна пришлось жрать...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, sergey2b, Вы писали:
S>после принятия ANSII C
S>запрет на смещивания указателей и int
Ну это прям типизация я вообще не могу.
S>прототипы функций S>модификатор const S>изменились правила приведения типов
Тут я не в курсе, что-то поменялось с 80х годов?
S>возрат функцийе enum
Вот практическая задача — я хочу 2 типа, температура и давление. Оба имеют значение с плавающей точкой. Как сделать, чтобы значения этих типов были несовместимы? Чтобы их было нельзя присваивать, сравнивать, передавать в функцию, если типы не совпадают. Чтобы при попытке написать ошибочное использование получалась ошибка компиляции.
В C++ написать такое как 2 пальца об асфальт. Если это нельзя написать в C, то о какой строгой типизации идёт речь?
V>Кстати, была такая продвинутая оболочка для MS-DOS под названием DOS-Navigator — исходники на Паскале (причем размер под 3 мегабайта).
Кстати Windows начинался на Паскале. V>Мой преподаватель по термеху писал на Паскале (по-моему, 5.5 или, максимум, 6) пакет для моделирования динамических систем с графической V>визуализацией (потом к нему еще сопромат прикрутили). Причем пакет не был простой поделкой — на нем рассчитывали динамику раскрытия V>солнечных батарей на космических аппаратах и прочие сурьёзные задачи.
Это и сейчас пишут — на компонентном паскале.
Поинтересуйся на oberoncore.ru
Там научники, которым не требуется создавать промышленный продукт, свои научные программы пишут в BlackBox на компоентном паскале.
И очень довольны.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Nikе, Вы писали:
N>Здравствуйте, Михaил, Вы писали:
N>>>Основное отличие С от С++, это убогость и крайняя устарелость.
М>>минималистичность и полный контроль над железом.
N>C++ — это минималистичность и полный контроль над железом. А С — отстой.
Нет, сипипи — это раздутый монстр, куда впихнули все, что только возможно было впихнуть (и продолжают это делать).
М>>то что на нём почти все mcu программируются?q А так же драйвера, системные утилиты и огромное количество кроссплатформенных opensource либ?
N>Современные драйвера вполне себе на С++ пишут. На С пишут дрова, если нужно в килобайты вместиться.
Пишут на максимально обрубленном с++, который по сути больше чем «с с классами» трудно назвать.
М>>ты сиплюсплюсер?
N>Я использую тот язык, который оптимален для конкретной задачи.
Ну так какие задачи решаешь? У каждого есть специализация.
Здравствуйте, Marty, Вы писали:
M>Здравствуйте, Михaил, Вы писали:
М>>то что на нём почти все mcu программируются?q А так же драйвера, системные утилиты и огромное количество кроссплатформенных opensource либ?
M>Эмбеддеры давно на плюсы перешли. Пятый Keil (armcc) даже 11 стандарт поддерживает (в нем — в Keil'е есть и clang), а на днях JetBrains выкатили CLion для армовских MCU.
Поддерживает не значит что пишут. Ардуино тоже якобы с++, а на практике там этих плюсов и не видно.
M>Драйвера под винду давно на плюсах пишут, под линупс — да, на сишечке в основном, из-за упоротости отца-основателя
Пишут да. Где от плюсов — наследование, и то урезанное.
Здравствуйте, Михaил, Вы писали:
N>>C++ — это минималистичность и полный контроль над железом. А С — отстой.
М>Нет, сипипи — это раздутый монстр, куда впихнули все, что только возможно было впихнуть (и продолжают это делать).
Не, там нет многого-полезного.
М>Пишут на максимально обрубленном с++, который по сути больше чем «с с классами» трудно назвать.
Всё, кроме исключений.
N>>Я использую тот язык, который оптимален для конкретной задачи.
М>Ну так какие задачи решаешь? У каждого есть специализация.
Я неспециализированный, то тут то там. Делаю сложные проекты, часто приходится решать довольно внезапные задачи. Но С++ это основной бекграунд, конечно.
Здравствуйте, BadCats, Вы писали:
BC>Посоветуйте пожалуйста курсы или книги про Си, которые демонстрируют его отличие от C++ — т.е материал по Си — не для начинающих, позволяющий освоить язык как "дополнительный", в том смысле, что его изучение будет не первым.
Здравствуйте, Maniacal, Вы писали:
M>>>Это от компилятора зависит. В gcc (.a) это архив. В VC++, например, нет.
M>>Расскажи за MSVC
M>Что-то я посмотрел .a-файл, там тоже не архив, как и .lib у MSVC. Архив, естественно, в понимании сжатости данных.
Здравствуйте, Stanislav V. Zudin, Вы писали:
R>>2) Объявление переменных как можно ближе к месту их использования (это, опять же, к вопросу о легкости восприятия имен переменных).
SVZ>В новых Сях это есть. Но есть нюанс. SVZ>Если ограничить применение кода парой-тройкой популярных платформ, то нет нужды переходить на С++, используем свежий С и всё замечательно. SVZ>А если надо запускать код на каком-нить zOS, то тут проблема — компилятор С++ там времен 98г. Си — каноничный, времен K&R.
в чем плюс такого объявления ?
ведь искать по все функции какого типа переменная или окинуть взглядом список всех переменных в одном месте
уддобней чем искать эту информациию по всему тексту функции
Здравствуйте, sergey2b, Вы писали:
R>>>2) Объявление переменных как можно ближе к месту их использования (это, опять же, к вопросу о легкости восприятия имен переменных).
S>в чем плюс такого объявления ? S>ведь искать по все функции какого типа переменная или окинуть взглядом список всех переменных в одном месте S>уддобней чем искать эту информациию по всему тексту функции
Уменьшается вероятность ошибки, избавляемся от неинициализированных переменных.
Переменная появляется только там, где она реально нужна — код становится читабельнее.
Не все же функции состоят из пяти строк.
А работая в IDE нам пофигу, в каком месте объявлена переменная — её тип выводится в тултипе.
_____________________
С уважением,
Stanislav V. Zudin
Здравствуйте, Marty, Вы писали:
M>Т.е. это архив таки? M>Почему же там нет сжатия?
Потому, что файл, содержащий в себе другие файлы — называют архивом вне зависимости от сжатия.
Кстати, zip какой-нибудь тоже можно сделать без сжатия.
Здравствуйте, Mystic Artifact, Вы писали:
M>>Т.е. это архив таки? M>>Почему же там нет сжатия? MA> Потому, что файл, содержащий в себе другие файлы — называют архивом вне зависимости от сжатия. MA> Кстати, zip какой-нибудь тоже можно сделать без сжатия.
Здравствуйте, kov_serg, Вы писали:
_>Здравствуйте, Marty, Вы писали:
M>>tar — это архив или нет? _>Название Tape ARchive как бы намекает что это архив для сохранения на магнитную ленту
Ну, у них и МакДоналдс — ресторан. В русском языке это не так.
Здравствуйте, kov_serg, Вы писали:
_>Здравствуйте, Marty, Вы писали:
M>>tar — это архив или нет? _>Название Tape ARchive как бы намекает что это архив для сохранения на магнитную ленту
Угу. Специальная подготовка файла для архивирования на ленте. А .a и .lib не предархивная подготовка. Это библиотеки. Библиотека и архив почти синонимы, но архив — он для хранения, а библиотека для использования.