|
2 / 2 / 0
Регистрация: 03.05.2021
Сообщений: 6
|
|
Как эффективно изучать язык Си?10.05.2021, 22:27. Показов 10111. Ответов 63
Метки нет (Все метки)
Доброго времени суток!
Тут и, вообще, в Интернете довольно много разных книг и других ресурсов по теме - вкусы и методы обучения разные. Язык сам по себе очень притягательный, особенно на Линукс - всё под рукой, раздолье для программиста, прям и затягивает "под капот", хочется узнать как там внутри всё на самом деле работает, или научиться ещё какой-то функцией пользоваться на ночь глядя... Уже больше полугода перешел на Линукс, Pop!_OS. Записался на CS50, пока что (на 6-ой неделе) "отличник", хотя и приходится попотеть (иногда выполнение д/з может затянуться на несколько недель). Цель - когда-нибудь написать свою программу, желательно под Линукс, внести свой посильный вклад в OSS, а ещё круче - добавить свой код в Линукс, который изначально заточен под C. Опыт показывает, что наилучший способ научиться делать что-то хорошо - повторение и работа над ошибками. Вот и пишу маленькие коды как начинающий программист, практикуюсь в свои 45 лет. Беру где попало, особенно на CodeWars. Но... Чувствую, что чего-то не хватает. Как работает та или иная функция или концепция понятно, а почему - не совсем. Например, создавать и работать с объединениями (union) могу, а вот как они могут понадобиться на практике, в чём их польза (не от балды же разработчики его придумали!) и почему место в памяти выделяется наибольшему по размеру элементу объединения (в отличие от struct) не понятно. Может целенаправленной системы обучения/теории мне не хватает? Как-никак, человек я старого поколения, привык, чтобы всё было по конкретной программе и учебникам, с азов (даже если трудно поначалу), с постепенным усложнением, а не по практикумам (tutorial) на Youtube, хотя и там много чего интересного разузнал. А на Западе, как я вижу (могу и ошибаться), учебный процесс построен по принципу "быстрее, легче, веселее, рентабельнее". Могут сильно упрощать любую сложную тему лишь бы обучающийся быстрее достиг результата, а соответственно и быстрее обеспечил прибыль взамен потраченного на него времени и денег. Тут ничего плохого нет, только "издержки" - лощёные языки более высокого уровня абстракции, вроде Python. Но это отдельная тема для разговора.Да, CS50 - идея хорошая, но по мне - слишком обобщённая. Многое приходится искать самому, доучивать по другим источникам; задания хоть и выполнимые, объяснение конкретных целей и методов использования некоторых базовых концепций языка оставляет желать лучшего. Например, только недавно постиг истинный смысл указателей на указатели (double indirection или double pointers), в частности на примере использования строк и структур. Попутно сделал открытие - оказывается, C можно с уверенностью называть "языком указателей, да и только!" Была идея взяться за разработку конкретного проекта с нуля. Как по-вашему, стоит? Нужно ли обольщаться и тратить время на практику без хорошей теоретической подготовки? А как начинали Вы? Что посоветуете? Заранее большое спасибо! Рустам
1
|
|
| 10.05.2021, 22:27 | |
|
Ответы с готовыми решениями:
63
Как начать с 0 изучать язык СИ? Как эффективно изучать программирование? Способ как эффективно и быстро выучить английский язык |
|
2 / 2 / 0
Регистрация: 03.05.2021
Сообщений: 6
|
||||||
| 11.05.2021, 21:49 [ТС] | ||||||
|
И кто меня за язык тянул про объединения?!...
![]()
0
|
||||||
|
фрилансер
6506 / 5756 / 1134
Регистрация: 11.10.2019
Сообщений: 15,404
|
||
| 11.05.2021, 22:16 | ||
|
1
|
||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||||||
| 11.05.2021, 22:33 | ||||||||
0
|
||||||||
|
2 / 2 / 0
Регистрация: 03.05.2021
Сообщений: 6
|
||
| 11.05.2021, 22:55 [ТС] | ||
|
0
|
||
|
фрилансер
6506 / 5756 / 1134
Регистрация: 11.10.2019
Сообщений: 15,404
|
|
| 12.05.2021, 00:35 | |
|
0
|
|
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
||
| 12.05.2021, 09:17 | ||
|
Тоже юзал в такой ипостаси, когда писал под AVR. Битовые поля для МК - мегаудобно!
0
|
||
|
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
|
|||||||
| 12.05.2021, 10:01 | |||||||
0
|
|||||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||||||
| 12.05.2021, 10:55 | |||||||
|
. Так больше нравится?
0
|
|||||||
|
|
|
| 12.05.2021, 10:56 | |
|
0
|
|
|
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
|
|||
| 12.05.2021, 10:59 | |||
|
Добавлено через 51 секунду
0
|
|||
|
|
||
| 12.05.2021, 11:01 | ||
|
0
|
||
|
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
|
||
| 12.05.2021, 11:02 | ||
|
0
|
||
|
|
|
| 12.05.2021, 11:03 | |
|
0
|
|
|
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
|
||
| 12.05.2021, 11:17 | ||
|
Но если честно, ваш уровень я увидел с самого начала данной темы. И вопрос свой я задал специально. Как видим, результат полностью оправдал ожидания. Для публики: существуют универсальные критерии, как отличить специалиста от человека, который просто прочитал что-то в интернете и теперь повторяет везде прочитанное, никоим образом не понимая, что имелось ввиду в оригинале. Вот этот персонаж как раз один из таких "ретрансляторов", что очень хорошо видно на примере данной темы. Главный принцип - только лозунги и ни капли конкретики. На коде данный товарищ сразу же показал полное непонимание. Забавно на этом фоне смотрятся возгласы про "с переносимостью могут быть проблемы". Можно видеть, что я ранее сообщил про эти проблемы и показал исправление, а эксперт снова ничего не смог. Хотя скорее всего он просто прочёл мой пост и решил выдать мысь за свою.
0
|
||
|
|
||
| 12.05.2021, 11:35 | ||
|
0
|
||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||
| 12.05.2021, 11:58 | ||||
|
Но спасибо что напомнили и о такой вещи. В вашем выделяется "мультитипизированный" кусок памяти, который кастуется к нужному типу из заданного списка. В чем принципиальная разница? Ну кроме синтаксического сахара, который уже озвучили (выравнивание, выбор размера)? С переносимостью тоже никакой разницы не будет, ведь что там приведение типов, что там. Собственно, поэтому union'ы и используют либо там, где разные приведения не связаны, либо в платформо-зависимой части (тех же контроллерах).
0
|
||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|
| 12.05.2021, 13:16 | |
|
0
|
|
|
|
||
| 12.05.2021, 13:35 | ||
|
0
|
||
|
2 / 2 / 0
Регистрация: 03.05.2021
Сообщений: 6
|
|
| 12.05.2021, 13:48 [ТС] | |
|
Ребята, это уже второй намёк с моей стороны - Вы про заголовок темы не забыли случайно?
Бог с вами, своё время не жалеете, моё-то пожалейте! Выясняйте отношения в другом месте, пожалуйста. По теме только первые 2-3 ответа. ![]() Представьте какое у меня мнение о форуме складывается в целом - я пришёл сюда узнать что-то полезное, а тут первое же сообщение-просьба и наталкиваюсь на выяснение отношений... Спасибо за понимание! Рустам
1
|
|
| 12.05.2021, 13:56 | |
|
Не по теме: _LoLo_, так это штатный процесс изучения языка, нужно привыкать :D
0
|
|
| 12.05.2021, 13:56 | |
|
Как изучать язык?
Как мне изучать язык java? Как изучать язык по книге Хейлсберга? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
|
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
|
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи.
. . .
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|