LINUX.ORG.RU

Стоит ли в нынче щас учить язык Си?

 ,


0

5

Всем привет! Стоит ли в наше время учить язык Си? Или сразу же C++ начинать? Так то не очень трудный язык этот ваш C++, все циклы в основном понятны while, do, for и т.д. Указатели тоже предельны ясны, сперва конечно немного недопонимал этих указателей, но 10-20 раз перечитал стало понятно. Но не суть. Так то я получается сразу пропустил язык Си, стоит ли его тоже овладеть или как? Совет дайте?


Ответ на: комментарий от Deleted

Ну это понятно. Одна процедурщина, а другая ооп. Но если в ракурсе смотреть мало чем они отличаются не так ли?

Hufoc
() автор топика
Ответ на: комментарий от Hufoc

мало чем они отличаются не так ли?

Не так.

Stil ★★★★★
()
Ответ на: комментарий от Hufoc

В дверь скоро пролезать перестанешь.

Deleted
()
Ответ на: комментарий от Hufoc

Какой ещё весной?

этой

С дуба упал что ли?

нет

Я вообще говорю...

я этого не слышу. вижу только что печатаешь.

формулируй яснее вопрос. в какой время? часовой пояс хотя бы укажи.

anonymous
()

Стоит ли в наше время учить язык Си?

Да.

Или сразу же C++ начинать?

Лучше даже не начинать.

Так то не очень трудный язык этот ваш C++, все циклы в основном понятны while, do, for и т.д.

Ну да, ну да. Это только в начале

Так то я получается сразу пропустил язык Си, стоит ли его тоже овладеть или как?

Нельзя не знать Си, зная C++

SZT ★★★★★
()

Пойдешь в си - обмажешься Posix, gtk, системщиной и микроконтроллерами. Пойдешь в плюсы - обмажешься Boost-ом и Qt. Шо то мрачный неприветливый мир, шо это. Лучше выбрать что-то более дружелюбное: D, Rust, Swift

makoven ★★★★★
()

конечно стоит

Так то не очень трудный язык этот ваш C++

если бы он не был трудным, его спецификация занимала бы чутка поменьше, чем 2000 страниц

Harald ★★★★★
()
Ответ на: комментарий от Deleted

Си и С++ это разные языки, под разные задачи.

Нет. C++ это почти что надмножество над Си. И любой человек, знающий плосы, должен и Си знать.

SZT ★★★★★
()

В твоём случае учить надо либо русский, либо английский. Что C, что C++ для тебя пока рановато. Максимум - JavaScript ;)

Norgat ★★★★★
()
Ответ на: комментарий от SZT

любой человек, знающий плосы, должен и Си знать

Кому должен и для чего? Чтобы Си действительно знать думаю годы практики нужны. Или ты в смысле на уровне helloworld'а? Ну тогда мы тут все знатоки Си.

mbivanyuk ★★★★★
()

Так то не очень трудный язык этот ваш C++

Вот тут ты ошибаешься.

Deleted
()

Стоит ли в нынче щас учить язык Си?

Стоит. Только не С/C++, а русский язык. После этого — хоть брэйнфак учите.

znenyegvkby
()
Ответ на: комментарий от Norgat

В твоём случае учить надо либо русский, либо английский.

в его случае лучше полностью забыть все.

anonymous
()

Так то не очень трудный язык этот ваш C++, все циклы в основном понятны while, do, for и т.д. Указатели тоже предельны ясны, сперва конечно немного недопонимал этих указателей, но 10-20 раз перечитал стало понятно.

Считай, что ты базово немного выучил Си. И программирование в целом, ибо циклы везде есть, в том или ином виде. :)

a1batross ★★★★★
()

Лично мое мнение: Си++ можешь и не знать, но Си - много где годен: драйвера, микроконтроллеры, модули-ускоряшки для более высокоуровневых языков (Pyhton), доступ к железу из высокоуровневых языков.

Итог: Си - стоит учить. По мне так Си предельно примитивен и прост, отличный язык.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от SZT

Да

А зачем, собственно? Вот есть сейчас JS, эдакий кроссплатформенный ассемблер. Скорость, если она в среднем и меньше раз в 3-5, в среднем, в наше время не критична, к тому же есть asm.js. Все что угодно можно компилировать в JS, и это заведется везде , без геммороя.

filequest
()
Ответ на: комментарий от UVV

Если забыть про ключевые слова, размер characted literals, невозможность вызова void и необходимость лишних тайпкастов, то C является подмножеством C++. К тому же, оба языка основаны по сути на жонглировании указателями.

hateyoufeel ★★★★★
()
Ответ на: комментарий от filequest

Все что угодно можно компилировать в JS, и это заведется в любой браузерописочнице без доступа к чему-либо

Исправил.

makoven ★★★★★
()

Стоит учить Си только если у тебя уже есть представление о том, что такое структурное программирование (последовательное выполнение, условные операторы, циклы и т.д.) и как устроен компьютер.

Си не настолько сложный и разноплановый язык как «плюсы», для хелловордов выучить его труда не составить, при вышеперечисленных условиях.

Встречный вопрос: что такое указатель?! ;-)

Twissel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Только рекурсия

Ага, хвостовая. Это такая особая запись цикла for для илитки

makoven ★★★★★
()
Ответ на: комментарий от filequest

А зачем, собственно?

Потому что это низкоуровневый язык. Его знание позволяет лучше понимать то, как работает ЭВМ. Указатели, адресная арифметика, malloc/realloc, вот это все. Вот еще
http://russian.joelonsoftware.com/Articles/BacktoBasics.html
http://www.evanmiller.org/you-cant-dig-upwards.html — перевод на хабре https://habrahabr.ru/company/piter/blog/271347/

SZT ★★★★★
()
Ответ на: комментарий от filequest

Скорость, если она в среднем и меньше раз в 3-5, в среднем, в наше время не критична,

Даже разница в 5-10% бывает критична, а ты тут 3-5 раз и тебе некритично, мда...

к тому же есть asm.js. Все что угодно можно компилировать в JS, и это заведется везде , без геммороя.

На atmega16 заведи мне. И насчет «без геммороя» ты погорячился. https://www.khronos.org/registry/typedarray/specs/latest/ - там есть зависимость от endian

In this specification, differences in endianness only become apparent in certain situations: for example, when overlaying multiple types of views on the same region of an ArrayBuffer. The following normative rules apply to implementations of the typed array views.

SZT ★★★★★
()

Знания лишними не бывают. Лично я тоже буквально неделю назад начал читать Дейтелов, «C How To Program», до этого момента лишь пописывая хеллоуворлды на пёрле.

the_electric_hand ★★
()
Ответ на: комментарий от filequest

Разница между nodejs и каким-нибудь питоном в том, что для последнего ты сможешь написать биндинг к сишной либе не сойдя с ума обмазываясь C++ интерфейсом к V8

makoven ★★★★★
()
Последнее исправление: makoven (всего исправлений: 1)
Ответ на: комментарий от the_electric_hand

Знания лишними не бывают

Соглашусь с товарищем. Время есть — учи всё.

a1batross ★★★★★
()
Ответ на: комментарий от UVV

Здесь смотрел?

Ага. Где-то это нормально реализовано и используется?

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Нет.

да. разная область решений, разная архитектура приложений, разные best practices. локально языки схожи, глобально они отличаются очень сильно

jtootf ★★★★★
()
Ответ на: комментарий от loz

Можно не знать про структурки, а сразу объектами пользоваться) Ну и в malloc/free не уметь.

Если не знать, то ты мозгом не распарсишь плюсовый код, в котором эти структурки и malloc/free используется. Не можешь распарсить -> не владеешь языком в полной мере

SZT ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.