Rating@Mail.ru

Форум сайта "Виртуальная энциклопедия "Linux по-русски"


Текущее время: 23 янв 2017, 09:30

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: язык C: неизвестное о известном
Непрочитанное сообщениеДобавлено: 21 ноя 2013, 16:50 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Вот ненароком, не планируемо и попутно сложилась любопытная тема: язык C в Linux: вопросы начального уровня.

Началось обсуждение как подборка некоторых учебных примеров кода, обращающих внимание на всякие тонкости языка C, на которые хотелось бы обратить внимание начинающих ... напимер:
- различные представления одних и тех же данных в RAM когда на них накладываются предположения различной типизации;
- запись бесконечных циклов (в разной форме) и предпочтительность бесконечных циклов традиционным с условиями в заголовках;
- запись циклов без тела (когда все действия записаны в условиях);
и т.п.
Т.е., это отчасти элементы трюков ... но их хорошо бы научиться видеть, замечать, и понимать в коде.

Но дальше этот набор ... "задрочек", простите за выражение, расширялся, обсуждение уже перевалило за 6 страниц форума, и начало дополняться такими подробностями, что не всегда упоминаются в широкой литературе...
Так что и название темы "вопросы начального уровня" уже перестало соответствовать наполнению ... но не менять же название? ;-)
Теперь это уже ... что-то типа: "реализация на C всяких тонких возможностей".

Ну что ещё вообще можно сказать нового про язык C???, которого год рождения - 1969г., год зрелости - 1973г., на котором написано кода больше чем на любом другом языке отдельно взятом (все UNIX-like OS + весь GNU софт + множество свободных проектов + ...)
Оказывается - можно ;-) ... т.е. не то, чтобы "нового", а:
- ... такого, что появилось в более поздних стандартах (C99): complex и long double типы значений и др. - что не упоминается в учебниках 20-30 летней давности и 10-го издания, по которым все и учатся ... и о том как эти типы можно использовать куда более широко - тот же complex как представление 2D-координат точек ... чем, по существу, числа complex и являются;
- ... того, что сложилось как "тенденция" последних лет ... например использование циклических двухсвязных списков везде в ядре Linux, вместо самых разнообразных (линейных односвязных и др.) списков, которые и описываются везде в книгах ... и это (из kernel Linux) очень здоровая тенденция, строить на таких списковых структурах любые ссылочные (динамические) структуры;
- ... то, что не является какой-то спецификой С, а есть свойством (почти) любого языка программирования - это уже уже из области алгоритмики ... но на что недостаточно обращают внимание излагая C: использование рекурсии, нисходящая и восходящая рекурсии, оценка достижимой погрешности при итерационных вычислениях и т.п.

В теме их 6-ти страниц обсуждения множество примеров кода на все эти случаи ... большинство из этих примеров достаточно детально там обсуждается.

Рекомендую поглядеть в тему язык C в Linux: вопросы начального уровня. ;-)
... и указать на ещё какие тонкие моменты (как языка так и алгоритмики), которые следовало бы иллюстрировать показательными примерами кода.


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: язык C: неизвестное о известном
Непрочитанное сообщениеДобавлено: 21 ноя 2013, 19:49 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Olej писал(а):
Так что и название темы "вопросы начального уровня" уже перестало соответствовать наполнению ... но не менять же название? ;-)
Теперь это уже ... что-то типа: "реализация на C всяких тонких возможностей".


Заглянул ненароком на C (Си).
Изображение

Там студенты в большинстве ... что-то пишут.
Сказать что это "мрак" - это значит ничего не сказать вовсе. :oops:

Но это значит, что такой вот уровень преподавателей, которые их учат.
... какой и уровень формулирования задач, даже, которые задают для проработки.
Жуть! :-o


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Ответ
Непрочитанное сообщениеДобавлено: 27 дек 2013, 09:34 
Не в сети
Интересующийся
Аватара пользователя

Зарегистрирован: 10 дек 2013, 13:33
Сообщения: 3
Откуда: Россия
Прикольно... надо будет попробовать.

_________________
фруктовые супы рецепты


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Ответ
Непрочитанное сообщениеДобавлено: 27 дек 2013, 13:43 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Svitlanija писал(а):
Прикольно... надо будет попробовать.


Я так понимаю, что это стёб, чтоб пройти предмодерацию?
Но так же легко пользователь Svitlanija будет и удалён, без любого уведомления, и с запретом IP на последующую регистрацию :lol:


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Ответ
Непрочитанное сообщениеДобавлено: 08 янв 2014, 03:25 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Svitlanija писал(а):
Прикольно... надо будет попробовать.


Сделал я совершенно предварительную редакцию текста (16 стр.) и архив примеров по материалам этих обсуждений.
Это ещё будет существенно меняться ... но для предварительного чтения годится.


Вложения:
c_details_05.odt [85 КБ]
Скачиваний: 414
c.tgz [7.87 КБ]
Скачиваний: 429
Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Ответ
Непрочитанное сообщениеДобавлено: 05 фев 2014, 16:28 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Olej писал(а):
Svitlanija писал(а):
Прикольно... надо будет попробовать.


Сделал я совершенно предварительную редакцию текста (16 стр.) и архив примеров по материалам этих обсуждений.
Это ещё будет существенно меняться ... но для предварительного чтения годится.


Кого заинтересуют более свежие версии - вам сюда ;-) : Язык C: заметки на полях


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Ответ
Непрочитанное сообщениеДобавлено: 05 апр 2014, 12:20 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Olej писал(а):
Svitlanija писал(а):
Прикольно... надо будет попробовать.


Сделал я совершенно предварительную редакцию текста (16 стр.) и архив примеров по материалам этих обсуждений.
Это ещё будет существенно меняться ... но для предварительного чтения годится.


Этот текст, с некоторыми досадными для меня сокращениями, будет со дня на день опубликован в виде 3-х последовательных статей на IBM developerWorks - я им уже и корректуру после редактора вернул...


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Ответ
Непрочитанное сообщениеДобавлено: 03 июн 2016, 05:12 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Olej писал(а):
Olej писал(а):
Svitlanija писал(а):
Прикольно... надо будет попробовать.


Сделал я совершенно предварительную редакцию текста (16 стр.) и архив примеров по материалам этих обсуждений.
Это ещё будет существенно меняться ... но для предварительного чтения годится.


Этот текст, с некоторыми досадными для меня сокращениями, будет со дня на день опубликован в виде 3-х последовательных статей на IBM developerWorks - я им уже и корректуру после редактора вернул...


08.04.2014 :
Малоизвестные возможности и последние нововведения в языке C. Часть 1. Компилятор GCC и новые типы данных

09.04.2014 :
Малоизвестные возможности и последние нововведения в языке C. Часть 2. Точность вычислений и локализация в приложениях на языке С
Малоизвестные возможности и последние нововведения в языке C. Часть 3. Передача и возврат значений из функций и компилятор Clang

P.S. Ну и названия же они выдумывают! :-o :lol: :evil:


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: язык C: неизвестное о известном
Непрочитанное сообщениеДобавлено: 22 ноя 2016, 20:50 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 8521
Откуда: Харьков
Новая публикация о малоизвестных расширениях C & C++, кое-что может быть полезным, кое-что любопытно или смешно :-) :
Расширения языков C и C++. Часть 1
Читайте.


Вернуться к началу
 Профиль Отправить личное сообщение  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
[ Time : 0.035s | 16 Queries | GZIP : On ]