Урок 2. Перед C++ был C. C (произносится как «Си») был разработан в 1972 году Деннисом Ритчи в Bell Telephone Laboratories как системный язык программирования. То есть язык для написания операционных систем. Основным заданием Ритчи было создание легко компилируемого минималистического языка, который предоставлял бы эффективный доступ к памяти, относительно быстро выполнялся, и на котором можно было бы писать эффективный код. Таким образом, создавая высокоуровневый язык, был разработан С, который во многом относился к языкам низкого уровня, оставаясь при этом независимым от платформ, под которые бы писался код. C в конечном итоге стал настолько эффективным и гибким, что в 1973 году Ритчи и Кен Томпсон переписали больше половины операционной системы UNIX, используя этот язык. Многие предыдущие операционные системы были написаны на языке ассемблера. В отличие от Ассемблера, программы на котором пишутся под конкретные процессоры, отличная портативность языка C позволила перекомпилировать UNIX и на другие типы компьютеров, ускоряя его популяризацию. Язык C и операционная система UNIX тесно связаны между собой, и популярность первого отчасти связана с успехом второго. В 1978 году Брайан Керниган и Деннис Ритчи опубликовали книгу под названием «Язык программирования Cи». Эта книга, более известна как «K&R» (первые буквы фамилий авторов), стала стандартом и своеобразной инструкциею к С. Когда требовалась максимальная портативность, то программисты придерживались рекомендаций в K&R, поскольку большинство компиляторов в то время были реализованы в соответствие стандартам, описанным в этой же книге. В 1983 году Американский национальный институт стандартов (ANSI) сформировал комитет для установления официального стандарта для языка C. В 1989 году они закончили и выпустили стандарт C89, более широко известен как ANSI C. В 1990 Международная организация по стандартизации (ISO) приняла ANSI C (с небольшими изменениями). Эта версия C стала известна как C90. В конечном счете, компиляторы адаптировались под требования ANSI C/C90 и программы, в которых требовалась максимальная портативность, писались в соответствие с этими стандартами. В 1999 году комитет ANSI выпустил новую версию языка C, которая получила название C99. Она приняла много особенностей (фич), которые уже были реализованные в компиляторах (в виде разных расширений) или в C++. C++ C++ (произносится как «Си плюс плюс») был разработан Бьёрном Страуструпом в Bell Labs в качестве дополнения к C в 1979 г. Он добавил множество новых фич в язык С. Его популярность была вызвана объектно-ориентированностью языка. Насчет объектно-ориентированного программирования (ООП) и его отличий от традиционных методов программирования мы поговорим несколько позже. C++ был ратифицированным (одобренным) комитетом ISO в 1998 году и потом снова в 2003 году (под названием C++03). Потом были еще два обновления (C++11 и C++14, ратифицированные в 2011 и 2014 годах соответственно), которые добавили больше функциональных возможностей. Философия С и С++ Смысл философии языков С и C++ можно определить выражением «доверять программисту». Например, компилятор не будет вам мешать сделать что-то новое, что имеет смысл, но также не будет мешать вам сделать что-то, что может привести к сбою. Это одна из главных причин, почему так важно знать то, что вы не должны делать в C/C++ как и то, что вы должны делать. Информация была взята с учебника.