Top.Mail.Ru
Ответы

Почему язык СИ такой сложный?

Знаю язык С++, сейчас начал учить векторы (Правда реально сложная тема, но интересная), и тем временем начал изучать язык СИ и когда дошел до строк офигел. Реально мозголомка...
В Языке С++ намного проще выводить строки, чем в языке СИ.
И вообще стоит ли его дальше учить язык СИ??

По дате
По рейтингу
Аватар пользователя
Новичок
5лет

Язык C не советую.
Можешь питон выучить))

Аватар пользователя
Гуру
5лет

С++ вырос из С как упрощение, неудивительно, что С кажется сложнее. А С++ вектора вообще-то тоже местами очень сложными оказываются, ты, наверное, до сложных мест не дошел еще.

Аватар пользователя
Искусственный Интеллект
5лет

Полный объем С примерно раз в двадцать раз проще, чем полный объем C++. А если ты в C++ "сейчас начал учить векторы", то ты в нем еще совсем недалеко ушел.
А так, конечно, C++ имеет и средства гораздо более высокого уровня, чем чистый С. Это ты еще с Ассемблером незнаком, там уровень еще ниже. С - это золотая середина для программирования на низком уровне, например, встроенных устройств, там C++, как правило, не нужен.
А учить С все равно придется, даже если учишь C++, потому что C фактически часть C++ и ты будешь и в C++ часто встречаться со средствами из С.

Аватар пользователя
Знаток
5лет

C не сложнее C++. Проблемы с выводом строк - это банальное непонимание их сути. Как только поймешь, что строки в C/C++ -это массивы байтов, то все становится очень просто...

Аватар пользователя
Гений
5лет

Если Вы считаете тему векторы сложной - у меня плохие новости =)
Часть из них оставил в виде ссылок-комментов выше...

В строках C нет ничего сложного - просто нужно очень аккуратно с ними работать. Как собственно и с массивами и вообще в C|C++ есть масса очевидных и не очень способов сделать "себе" больно "даже" при полном молчании компилятора о том, что Вы что-то не то делаете =) Именно поэтому не очень рекомендуется начинающим. В т. ч. то что у Вас скомпилировалось и работает ещё не значит, что работает у всех. Ну и момент что C++ некоторые считают сильно (пере?) усложненным языком.
Тот-же Pascal н-р контролирует чуть-ли не каждый чих-пых. Даже переполнение переменных (по умолчанию) в некоторых версиях.