Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ferrari F1
Заблокирован
#1

Впечатления от знакомства с чистым Си - C++

23.07.2015, 00:45. Просмотров 538. Ответов 16
Метки нет (Все метки)

Всем здрасьте, порядка полугода назад так захотел изучать Си++, что прочел 1000+ страничную книгу Лафоре об ООП + Си++. Книга понравилась, но почувствовал, что мне необходимо окунуться в самые дебри языка.

Прочел книгу кернигана и ритчи по чистому Си, книга хорошая, но ощущения недосказанности все равно сохранилось.
Пошел еще дальше, нашел книгу по Си для отморозков, в которой о языке расписывается на атомном уровне (лексемы, досканальные правила объявлений, приведения типов, выравнивание структур в памяти, остроконечные и тупоконечные архитектуры и прочее).

Прочитав все это я ужаснулся, насколько мерзопакасным может быть этот язык Си: ТОННЫ макросов, тонны всяких переименнованных стандартных типов (size_t, time_t и прочих), целая свалка функций под названием Стандартная библиотека. аргументы переменной длины, прототипы функций с неопределенными арг-ами.
ДИЧАЙШИЕ объявления функций и(ли) указателей подобно этому
C
1
double (*(*f)(double(*)(double)))(double)
????КАК ЛЮДИ НЕ СОШЛИ С УМА ОТ ЭТОГО ЯЗЫКА АДА????
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2015, 00:45     Впечатления от знакомства с чистым Си
Посмотрите здесь:

Впечатления от прочтения стандарта - C++
Сколько у вас уходило времени на прочтение стандарта? Тяжело ли он читается? Если человек до этого читал всякие вводные книги по С++,...

Каковы ваши впечатления от книги Страуструпа Программирование на языке С++(третье издание)? - C++
Начал читать книгу Страуструпа Программирование на языке С++(третье издание), после прочтенных 100 страниц впечатление прекрасное. Даже...

Поле было чистым - MS Access
Подскажите пожайлуста Что надо дописать и куда,чтоб при отсутствии в поле данных то есть сумма 0.00 не писало ошибку ,поле просто было...

как сделать винчестер чистым - Жесткие диски
Установлена ОС надо отформатировать винчестер чтобы он был как новый.PartitionMagic не помогает.Остаются фаилы.Что делать?

Знакомства
давайте тут будем писать о себе :);)

Знакомства - Pascal
В компании из N человек составили список попарно знакомых. Так как дело происходило на востоке, а восток-дело тонкое, то при этом, если A...

Знакомства... - Обо всем!
Буду рад новым знакомствам с людьми интересующимися C#, ASP.NET ... VK : http://vkontakte.ru/id19212123 icq : 476060019

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_Valera_
486 / 368 / 94
Регистрация: 27.01.2015
Сообщений: 1,588
23.07.2015, 00:53     Впечатления от знакомства с чистым Си #2
А ты не читай то, что писали динозавры. Сейчас можно найти все что угодно: видео, презентации, сайты, даже игры(ну для java точно видел). Можно во всем разобраться доступно, вобщем. Собственно математику тоже можно почитать как в учебнике, математическим языком- и забросить этот бред, а можно посмотреть видео или почитать посты нормальных людей, а не роботов, и разобраться в теме. Короче дело не в языке, а в том Го*нопреподе который его писал, преподавал...и тд!
shmkv
562 / 276 / 37
Регистрация: 21.07.2015
Сообщений: 845
23.07.2015, 01:01     Впечатления от знакомства с чистым Си #3
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
????КАК ЛЮДИ НЕ СОШЛИ С УМА ОТ ЭТОГО ЯЗЫКА АДА????
А люди просто пишут на нем не задумываясь...

Добавлено через 2 минуты
На самом все эти "страшные штучки" очень даже нужны.
Ferrari F1
Заблокирован
23.07.2015, 01:05  [ТС]     Впечатления от знакомства с чистым Си #4
shmkv, разве нельзя писать ПО для микроконтроллеров посредством ООП?
shmkv
562 / 276 / 37
Регистрация: 21.07.2015
Сообщений: 845
23.07.2015, 01:09     Впечатления от знакомства с чистым Си #5
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
shmkv, разве нельзя писать ПО для микроконтроллеров посредством ООП?
Можно, но:
С ограничениями (без исключений и других некоторых вещей).
Не всегда в этом есть смысл.
И даже без исключений может возникнуть много всяких нехороших сюрпризов вроде невозможности инициализации списка глобальных конструкторов. В этом плане Си более предсказуемый и работоспособный под голым железом.
smartpointer
67 / 61 / 23
Регистрация: 17.02.2014
Сообщений: 256
23.07.2015, 01:16     Впечатления от знакомства с чистым Си #6
Дело все в том, что плюсы бесполезны без своей си совместимости - поскольку останутся только шаблоны и классы, многие штуки мне лично очень нравятся например #define
nmcf
5113 / 4433 / 1474
Регистрация: 14.04.2014
Сообщений: 17,571
23.07.2015, 18:56     Впечатления от знакомства с чистым Си #7
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
разве нельзя писать ПО для микроконтроллеров посредством ООП
Просто они слабоваты в плане ресурсов, там до сих пор Ассемблер применяется.
Rius
Эксперт .NET
2338 / 1544 / 361
Регистрация: 25.05.2015
Сообщений: 5,187
Записей в блоге: 8
Завершенные тесты: 4
23.07.2015, 19:28     Впечатления от знакомства с чистым Си #8
Цитата Сообщение от nmcf Посмотреть сообщение
сто они слабоваты в плане ресурсов, там до сих пор Ассемблер применяется.
Нет, C/C++ уже широко распространён.

Цитата Сообщение от shmkv Посмотреть сообщение
????КАК ЛЮДИ НЕ СОШЛИ С УМА ОТ ЭТОГО ЯЗЫКА АДА????
Люди не обязаны применить все эти особенности в полном наборе, постоянно, в одном проекте, и даже вообще не обязаны применять когда-либо.
Excalibur921
588 / 320 / 48
Регистрация: 12.10.2013
Сообщений: 2,268
23.07.2015, 20:09     Впечатления от знакомства с чистым Си #9
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
????КАК ЛЮДИ НЕ СОШЛИ С УМА ОТ ЭТОГО ЯЗЫКА АДА????
А вы не читайте все подряд…это пустая трата времени. Да и чтение книги подряд без практики пустая трата времени. Нужно читать то что сейчас интересует и побольше практики. Если вы не используете знания они стираются.

Ну вот вы прочитали кучу книг.. и что вы теперь лютый гуру С?

На любой вопрос в форуме ответ знаете? Или вы ничего не умеете а только гордитесь количество прочитанных страниц и скорей всего больше половину из них не помните и\ или забудете через месяц? И в чем смысл?

Добавлено через 5 минут
Цитата Сообщение от nmcf Посмотреть сообщение
разве нельзя писать ПО для микроконтроллеров посредством ООП
Кстати помню когда мучал ассемблер для микроконтроллеров была найдена прога которая из блок схем логики принятой в информатике строила код на ассемблере...получилась наглядность логической схемы и скорость ассемблера. Может уже и есть такое не знаю =).А то все то С то ASM и мыкайся . А тут оп два в одном…
Ferrari F1
Заблокирован
23.07.2015, 20:33  [ТС]     Впечатления от знакомства с чистым Си #10
Excalibur921, помню все, о чем читал. Стараюсь читать книги очень вдумчиво
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
23.07.2015, 20:47     Впечатления от знакомства с чистым Си #11
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
помню все, о чем читал.
Главное не только помнить, но и понимать.
Ferrari F1
Заблокирован
23.07.2015, 21:04  [ТС]     Впечатления от знакомства с чистым Си #12
castaway, не считаю нужным доказывать здесь свое понимание. Например в последней книге для меня было новостью узнать про классы перегрузки имен (имена (переменных, ф-ций, имена typedef), метки goto, имена макросов, теги структур и идентификаторы полей). И вобщем много всего нового узнал, чего в обычных учебниках по Си++ не сыщешь, хоть он почти что и считается надмножеством Си
Rius
Эксперт .NET
2338 / 1544 / 361
Регистрация: 25.05.2015
Сообщений: 5,187
Записей в блоге: 8
Завершенные тесты: 4
23.07.2015, 21:11     Впечатления от знакомства с чистым Си #13
Ferrari F1, и не надо доказывать. Тем, кто видел студенческие работы, и так очевидно, что ни опыта, ни понимания у них ещё нет.
Ferrari F1
Заблокирован
23.07.2015, 21:17  [ТС]     Впечатления от знакомства с чистым Си #14
Rius, ну естественно у меня нет опыта в практическом применении си(++), ведь я ни разу не программировал микросхемы, или что там делают здешние форумчане, у кого репутация за тыщу и 5 - 10 летний опыт?

Для меня достаточным пока является просто осознавать свое уверенное понимание листингов. А то, как им в деле орудовать - это дело десятое
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
23.07.2015, 21:18     Впечатления от знакомства с чистым Си #15
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
классы перегрузки имен
Именно это я и имел в виду.
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
не считаю нужным доказывать здесь свое понимание
Согласен. Это ни к чему.
Aash
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 4
23.07.2015, 21:18     Впечатления от знакомства с чистым Си #16
))
на первом курсе было заданием создать 2-х мерный динамический массив))
Все это делали на маках, там где дискету надо в корзину выкинуть чтоб достать)))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.07.2015, 13:14     Впечатления от знакомства с чистым Си
Еще ссылки по теме:

Школьные знакомства
В олимпиаде участвуют 100 школьников. Известно, что для любой группы из 99 школьников найдётся ученик, знакомый с остальными членами...

Выбор между чистым PHP, фреймворком и CMS - PHP
Уже есть 2 похожие темы: http://www.cyberforum.ru/php-frameworks/thread1242164.html ...

Asus K52JV собрать bios с чистым ME регионом - Ремонт ноутбуков
Дано Asus K52JV rev. 2.2 хаб HM55 помогити собрать биос чистым ME регином, а то после замены хаба кулер работает на полную. Родной...

Преимущества EntityFramework над чистым ADO.NET - C#
Какие есть существенные в разработке преимущества, если не рассматривать изменение реляционного доступа на объектный ?

Первый опыт знакомства с Qt - C++ Qt
Ребята, подскажите пожалуйста по поводу сборки Qt под Visual Studio 2005. Я вчера раз 5 пытался сконфигурировать, но постоянно были...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
hoggy
6368 / 2586 / 451
Регистрация: 15.11.2014
Сообщений: 5,717
Завершенные тесты: 1
24.07.2015, 13:14     Впечатления от знакомства с чистым Си #17
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
double (*(*f)(double(*)(double)))(double)
????КАК ЛЮДИ НЕ СОШЛИ С УМА ОТ ЭТОГО ЯЗЫКА АДА????
тут все прекрасно читается на самом деле.
вероятно вы ещё не видели код, настоящий адь и содому.

http://rextester.com/OXPKL5710


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <iostream>
 
 
double foo(double v) { return v; }
 
typedef double (*pFunc)(double v);
 
pFunc baz( double f(double v)  )
{ 
    return f;
}
 
 
 
 
 
int main()
{
    std::cout << "Hello, world!\n";
    
    
    // объявление переменной pointer2function,
    // которая является указателем на функцию, 
    // которая принимает указатель на функцию
    // вида: double f(double v)
    // и возвращает в качестве результата указатель на функцию с такой же сигнатурой
    
    
    double (* (*pointer2function)(double(*)(double))) (double)  = baz;
        
    std::cout << "result = " << pointer2function(foo)(20.5) 
        << std::endl;
    
    
    // такие вещи нужно знать, если хотите состояться с/с++ программистом\
    // хотя бы потому, что спрашивают на собеседованиях
    // существуют простые алгоритмы разбора типа
    // [url]http://habrahabr.ru/post/116255/[/url]
   
    
    // альтернативный вариант:
    
    // объявляем тип указателя на функцию
    // который возвращает указатель на функцию, и принимает указатель на функцию
    typedef pFunc( *pointer2function_t)( pFunc);
    
    
    pointer2function_t example = baz;
    
    std::cout << "result = " << example(foo)(20.5) 
        << std::endl;
    
    
    // очевидно, что альтернативная запись намного проще читается
    // и именно так поступают и сишники, и плюснутые.
    // никто в здравом уме не пишет многоэтажные типы.
    
}
Yandex
Объявления
24.07.2015, 13:14     Впечатления от знакомства с чистым Си
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru