8-900-374-94-44
[email protected]
Slide Image
Меню

Книги программирование на си: Книги по языку Си для начинающих и не только

Содержание

Книги по языку Си для начинающих и не только

Язык Си — это очень мощный язык программирования, и к тому же один из самых популярных. Он очень гибок и не накладывает на программиста никаких ограничений, но именно это и может стать проблемой при изучении. Поэтому мы подобрали для вас несколько книг, которые помогут разобраться с основами языка, не отстрелив себе пару конечностей 😉


Книга «The C Book» предназначена для тех, кто уже имеет опыт программирования на высокоуровневых языках. Она посвящена моментам, характерным именно для Си.

Вот оглавление:

  • Введение в Си.
  • Переменные и арифметика.
  • Логические выражения и условные операторы.
  • Функции.
  • Массивы и указатели.
  • Структуры данных.
  • Препроцессор.
  • Особенности Си.
  • Библиотеки.
  • Примеры программ.

Программирование на С для начинающих

Купить 

«Программирование на С для начинающих» — учебник для максимально быстрого освоения языка, содержащий в себе много практического материала. Изложение четкое и простое, вы узнаете, как организовать программу, хранить и отображать данные, работать с переменными, операторами, вводом/выводом, указателями, массивами, функциями и многими другими вещами.

Пособие содержит всё самое важное, что вам нужно знать для программирования на C:

  • Структура программы.
  • Логические операторы и выражения.
  • Переменные.
  • Циклы.
  • Встроенные функции.
  • Массивы и указатели.
  • Тестирование программ.

«C Elements of Style» — это полезное руководство, описывающее основы хорошего стиля программирования. Оно научит вас писать код, который будет легко читать, понимать и поддерживать.

В книге вы найдёте советы по написанию комментариев, именованию переменных, форматированию, организации каталогов, созданию сборочных файлов и другим темам.


Изучаем программирование на C

Купить 

Книга из серии Head First, которая использует те же подходы, что и другие книги цикла. Материал подается в достаточно игровой форме и с использованием огромного количества иллюстраций. В книге рассматриваются:

  • основы языка Си;
  • динамическое управление памятью;
  • указатели и арифметические операции с ними;
  • многопоточность;
  • сетевое программирование.

Если вы не можете осилить классические учебники по Си, то не отчаивайтесь и попробуйте эту книгу. Она подойдет даже для новичков, не изучавших никогда программирование вообще.


Программирование на C для начинающих

Купить 

Еще один хороший учебник по Си. Рассчитан на читателей, никогда не писавших кода и стремящихся начать свое знакомство с программированием именно с Си. Написан доступным языком. Из-за нацеленности на новичков книга охватывает не все аспекты языка. Из минусов можно выделить опечатки в тексте и программном коде. Но для настоящих кодеров такое никогда не было проблемой!


Изучайте язык Си и одновременно пишите свой язык программирования — минималистскую версию Lisp — меньше чем за 1000 строк кода.

Эта книга предназначена для тех, кто хочет изучить Си и / или написать свой язык программирования. Однако вам явно потребуется какой-то опыт написания кода, поэтому в качестве первой книги мы её не рекомендуем.


«The GNU C Reference Manual» — это шпаргалка по языку Си стандартов C89 ANSI, C99 ISO и расширениям GNU. Она точно не нужна начинающим программистам.

Затронутые темы:

  • Лексические элементы.
  • Типы данных.
  • Выражения и операции.
  • Операторы.
  • Функции.
  • Структура программы и области видимости.
  • Пример программы.

Руководство «The GNU C Programming Tutorial» понятным образом объясняет читателю основы языка. Оно подробно описывает все основные элементы Си и рассказывает, как писать на нём программы, делая акцент на компиляторе GNU/Linux.

Рассматриваются такие темы, как функции, переменные и их объявление, области видимости, операторы, указатели, циклы, массивы, строки, а также многие другие.


Эта книга — небольшая методичка, составленная в Стэнфорде. Она вкратце описывает все основы языка Си. Из-за сжатых объяснений рекомендуется, чтобы у читателя уже был опыт программирования.

Затрагиваются такие темы: переменные, операторы, циклы, функции, ссылки, указатели, структуры, препроцессор и стандартная библиотека.

Содержание:

  • Вступление.
  • Базовые типы и операторы.
  • Условные операторы.
  • Сложные типы данных.
  • Функции.
  • Препроцессор.
  • Массивы и указатели.
  • Стандартная библиотека.

Книга «Beej’s Guide to C Programming» пытается вывести читателя из состояния полного непонимания Си и дать ему понять, что Си — это лучший язык программирования.

Оглавление:

  • Основы программирования.
  • Переменные, выражения и операторы.
  • Возвращение к основам.
  • Функции.
  • Переменные, часть 2.
  • Указатели.
  • Структуры.
  • Массивы.
  • Строки.
  • Динамическая память.
  • Продвинутые фичи.
  • Стандартная библиотека ввода / вывода.
  • Управление строками.
  • Математика.

«Modern C» стремится мотивировать читателя повысить свой уровень знания языка. Книга разделена на 5 уровней:

  • Первый уровень предоставляет читателю базовые знания о программах Си, их целях и структуре.
  • Второй уровень описывает основные принципы и фичи, такие как условные операторы, типы данных и функции.
  • Третий уровень ведёт к сердцу Си. Он рассказывает об указателях, модели памяти языка и его стандартной библиотекеe.
  • Четвёртый уровень затрагивает такие продвинутые темы, как производительность, атомарность, потоки, и другие.
  • Пятый уровень — в нём автор описывает своё видение развития языка.

Руководство «An Introduction to GCC» рассказывает о C и C++ компиляторах GNU, gcc and g++, являющихся частью GNU Compiler Collection (GCC).

Содержание:

  • Вступление.
  • Компиляция Си-программы.
  • Опции компиляции.
  • Использование препроцессора.
  • Компиляция для отладки.
  • Компиляция с оптимизацией.
  • Компиляция CPP-программы.
  • Платформо-специфические опции.
  • Решение проблем.
  • Инструменты.
  • Принципы работы компилятора.
  • Изучение скомпилированных файлов.
  • Типичные ошибки.
  • Дополнительные материалы.

Вот ещё несколько бесплатных книг по языку Си:

И, разумеется, не стоит забывать про каноничную книгу Кернигана и Ритчи: The C Programming Language. Сложная, не для начинающих, но по праву признана шедевром.

По материалам «Learn C Pprogramming With 9 Excellent Open Source Books»

Книги по C++: исчерпывающая подборка для начинающих

Собранные книги по C++ позволят выучить этот непростой язык как новичкам, так и тем программистам, которые ранее изучали другие языки.

Примечание Вы читаете улучшенную версию некогда выпущенной нами статьи.

  1. Книги на русском
  2. Книги на английском

Книги по C++ на русском


Программирование. Принципы и практика с использованием C++

Купить 

Книга написана создателем языка C++ — Бьёрном Страуструпом. Материал ориентирован в первую очередь на тех, кто не был знаком с программированием до прочтения этой книги. Она задумана как введение в разработку, а язык C++ играет, скорее, иллюстративную роль. Здесь не удастся найти информацию обо всех возможностях данного языка программирования, зато можно получить полезные советы и рекомендации для более эффективной работы с C++ от человека, который имеет бесценный опыт в программировании и огромное значение в сообществе программистов.

А ещё у нас есть отличная статья, в которой разобрано, для чего хорош C++.


Язык программирования C++. Лекции и упражнения

Купить 

Оригинал шестого издания был выпущен в далёком 2011 году, поэтому о стандартах 14/17 из этого учебника вы не узнаете. Тем не менее, это всё ещё хороший базис для начинающих. Стивен Прата вложил свой преподавательский опыт в эту книгу. В результате получился монументальный труд, который дружественно относится к читателю и понятным языком объясняет фундаментальные основы данного языка программирования.


Изучаем C++ через программирование игр

Купить 

Пусть эта книга и освещает только базовые элементы языка, её несомненный плюс в том, что она предлагает закреплять полученные знания путём создания небольших игр. В каждой главе дан определённый игровой проект, на примере которого поясняется, как можно использовать «фишки» «плюсов». Книга подойдёт и тем, кто до нее не был знаком с программированием.


Объектно-ориентированное программирование в С++

Купить 

Книга Роберта Лафоре из серии «Классика Computer Science». В ней очень грамотно и полно представлено понятие объектно-ориентированного программирования в C++. Кроме теории, книга предлагает читателю сделать около 100 различных упражнений, которые позволят отточить навык владения ООП. Отлично подходит для начинающих программистов.


Как программировать на C++

Читать 

Харви и Пол Дейтелы в своей книге решили отойти от привычного порядка введения в C++ и уже с третьей главы знакомят читателя с основами ООП, тем самым не освещая должным образом структурное и процедурное программирование. Большое внимание уделяется объектно-ориентированному проектированию программных систем с помощью графического языка UML2. Данный учебник является одним из самых популярных в мире по C++.


Стандарт C++17 удвоил объем библиотеки по сравнению с С++11. Из книги вы узнаете об особенностях 17-го стандарта с примерами, научитесь создавать пулы потоков выполнения, диспетчеры памяти, типы итераторов. В материале рассмотрены отличия полиморфизма, мономорфизма, а также обобщённых алгоритмов. Подойдёт разработчикам, которые уже знают C++, но хотят овладеть особенностями библиотеки C++17 STL и использовать на практике её компоненты.


Язык программирования C++. Базовый курс

Купить 

Более тысячи страниц подробного введения в C++, которое детально покрывает буквально все аспекты языка в доступном формате. С самого начала книги читателя знакомят со стандартной библиотекой C++, её популярными функциями и средствами, что позволяет в скором времени приступить к написанию программ, даже если не были изучены некоторые нюансы языка. В книге используется стандарт С++11.


Программирование на C++ в примерах и задачах

Купить 

Книга включила набор сведений, необходимых для успешного анализа и составления эффективных программных кодов. Вся информация изложена последовательно и дополняется огромным количеством примеров, задач для практики, а также детальным разбором решений.


Эффективное программирование на C++. Практическое программирование на примерах

Купить 

Содержит в себе всё то же самое, что и «Учебник для начинающих: С++», но короче в 4 раза. В основном из-за того, что автор не пытается ввести читателя в программирование, а сразу учит С++ тех, кто пришел из других языков. Может быть немного сложна для понимания, но тем, кто сможет осилить курс, это ещё и здорово сократит время изучения.


Книги по C++ на английском


Книга содержит огромное количество материала по C++ и явно стремится осветить все основные аспекты языка. В ней вы найдете информацию как о базовых элементах C++, так и об использовании библиотеки STL. Автор регулярно обновляет книгу, благодаря чему в ней представлена актуальная версия языка. Множество примеров кода и того, как работают программы, позволят закрепить пройденный материал.


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


Книга написана специально для C#-разработчиков. Материал по языку C++ даётся с учётом имеющихся у программиста знаний о языке C#. Книга полезна, когда часть проекта на C++, а вы знаете C#. После изучения материала вы сможете писать полноценные программы уже на C++.


Данный учебник является трудом автора и его 25 студентов, большинство из которых — новички в C++. Большая часть книги была написана совместными усилиями примерно за 36 часов. Сам автор признаётся, что будь у него бесконечное количество времени, он бы отполировал книгу до блеска. Всё это сделано с целью удешевления производства книги и, как следствие, выпуска её в свободный доступ для всех желающих. В ней могут быть ошибки, но в целом в книге представлен неплохой материал по языку C++.


В нашу подборку книг затесался сайт. Вы думаете, это какая-то ошибка? Вовсе нет: это онлайн-учебник по всему С++. Его несомненное преимущество в том, что каждая глава проиллюстрирована кодом, так что материал будет легче усвоить. Всё расписано достаточно подробно, но самое главное — книга регулярно дополняется в соответствии с новыми стандартами C++.


Книга научит основам структурного программирования. В первую очередь, она стремится донести до читателя, что такое «думать как программист», а уже во вторую — обучить языку C++. Материал представлен в удобочитаемой форме. Как и во многих учебниках, здесь есть материалы для самопроверки в каждой главе с ответами в конце. Автор подчёркивает, что материал фокусируется на решении типовых проблем и задач, возникающих в процессе написания программы.


Ещё одна онлайн-книга, которая даёт материал в соответствии с тремя курсами, которые в американских университетах называются CS 1, CS 2 и «Структуры данных». Новичкам стоит начать именно с курса CS 1, поскольку в нём представлены основы программирования на C++. После переходите к курсу CS 2, а затем — к структурам данных.

Советуем также ознакомиться и с нашим материалом по структурам данных.


Цели книги — научить использовать C++ и мыслить, как исследователь. Она делает акцент на использовании языка C++ как удобного инструмента для научных вычислений. Для знакомства с материалом желательна хотя бы математическая подготовка. Вы научитесь чётко формулировать проблему, представлять её решение, и только после этого писать код и проводить тесты.


Автор книги, Пэт Морин, считает, что студентам компьютерных специальностей необходимо изучать структуры данных, но в большинстве случаев хорошие книги по этой теме стоят немало, и студенты не могут приобрести их ввиду материального положения. Поэтому он решил написать собственный учебник для свободного распространения.


Фокус книги сосредоточен на создании эффективных структур данных и алгоритмов. После её прочтения вы научитесь выбирать или проектировать структуру данных, наиболее подходящую в той или иной части программы.


Раздел упражнений расположен на официальном сайте создателя языка, Бьёрна Страуструпа. Его не стали выпускать в печатном виде, поскольку раздел постоянно обновляется. Документ содержит множество упражнений различных уровней. Данный показатель указывается рядом с номером упражнения. Например, уровень (*1) означает, что задачу вполне реально решить за 10 минут, (*2) — за час, а на (*3) вы можете потратить целый день. Конечно, эти показатели не точные и целиком зависят только от вашего опыта, так что дерзайте! Чем больше задач вы решите, тем лучше освоите инструменты C++.


Если вы знаете другие книги, которые подойдут новичкам, поделитесь в комментариях.

Адаптированный перевод «The Definitive C++ Book Guide and List»

9 великолепных бесплатных книг для изучения C

Книги — вещь для профессионалов, и книги для программистов — не исключение. В данной статье мы отобрали 9 книг для изучения языка C.

C — процедурный высокоуровневый язык, который, пожалуй, больше всего повлиял на то, каким мы сегодня видим программирование. Он был создан для того, чтобы обеспечить программисту низкоуровневый доступ к памяти компьютера, чтобы писать эффективный код, который требует минимальной поддержки во время работы. Множество языков программирования обязано C своим существованием. Некоторые называют C латынью в мире программирования.

Язык лёгок на чтение. Он позволяет программисту структурировать код и делать его более читабельным. К тому же, язык очень гибкий, практичный и компактный, с легко понимаемым синтаксисом. Код, написанный на C, работает быстро, обеспечивает низкоуровневый доступ к памяти. Директивы компилятора позволяют программе, скомпилированной на одной архитектуре, благополучно работать и на других. C очень многогранен, и о нём было написано много книг.

Предлагаем вашему вниманию 9 книг для изучения языка C, которые могут вас зацепить, если, конечно, английский для вас — не проблема. Надеемся, этот сборник книг станет для вас удачным началом изучения C.

Книга, написанная Майком Банаханом (Mike Banahan), Декланом Брэйди (Declan Brady) и Марком Дораном (Mark Doran).

«The C Book» открывает наш сборник книг. Она написана для программистов, которые уже имеют опыт в использовании других современных процедурных языков программирования. Книга фокусируется на особенных для C вещах. А именно, на том, ради чего C был изначально придуман.

Некоторые из глав:

  • Вступление в C
  • Переменные и арифметика — посвящает читателя в фундаментальные основы языка, знакомит его с ключевыми словами, идентификаторами, объявлениями переменных, вещественным, целочисленным типами данных, выражениями, арифметикой в языке, а также с константами
  • Порядок выполнения программы и логические выражения — посвящает читателя в жизненный цикл программы, логические выражения, которых не было в предыдущей главе
  • Функции — возвращаемые значения, входные аргументы, рекурсии
  • Массивы и указатели — массивы, указатели, символьный тип данных, sizeof() и выделение памяти, указатели функций, выражения со знаком &, объявление функций
  • Структурированные типы данных — структуры, union, bitfield, enum, классификаторы, производные типы данных и инициализация
  • Препроцессор — как он работает и как разбор директив
  • Специальные разделы C — декларации, определения, typedef, const и volatile
  • Библиотеки — диагностика, управление символами, локализация, ограничения, математические функции, нелокальные goto, управление сигналами, ввод-вывод, форматированный ввод-вывод, неформатированный ввод-вывод, управление строками, дата, время и т.д
  • Готовые программы на C — складываем всё вместе, программы для отображения аргументов, программы сопоставления с образцом и другие, более амбициозные примеры.

Авторы дают право читателям свободно распространять книгу в случае, если авторы книги об этом знают. Один из авторов Майк Банахан подтвердил, что книга находится под лицензией Creative Commons.

Написано Стивом Уалайн (Steve Oualline).

C Elements of Style — одна из самых полезных книг, она покрывает принципы хорошего стиля в написании кода, учит C и C++ программистов тому, как писать читабельный код, который будет с лёгкостью понят другими программистами и будет легко поддерживаемым. Не имеет значения, студенты вы или профессионал, вы, определённо, сможете вынести что-то для себя из этой книги, а именно — огромное число советов по построению элегантного, надёжного кода.

Автор пытается продемонстрировать использование хорошего стиля программирования в своём коде. Так как компьютер читает строки кода, а человек больше фокусируется на комментариях, хорошо написанный код содержит в себе и то, и другое.

Главной целью книги является научить читателя писать хорошо структурированный код, который не только эффективно использует ресурсы компьютера, но и содержит в себе комментарии. Такой код будет легко исправлять, поддерживать и совершенствовать.

Книга содержит в себе целые руководства по таким вещам, как написание комментариев в шапке кода, именование переменных, форматирование выражений и так далее.

Как и предыдущий экземпляр, книга опубликована по лицензии Creative Commons.

Написано Даниелем Холденом (Daniel Holden).

Изучите язык C и одновременно научитесь создавать свой собственный язык программирования Lisp в менее, чем 1000 строках кода.

Эта книга подойдёт тем, кто хочет освоить язык C и тем, кто хоть раз задавался вопросом «как создать язык программирования». Стоит отметить, что книга не для новичков, так как вам стоит иметь некоторый опыт в программировании, чтобы читать и понимать содержание.

Build Your Own Lisp находится под лицензией Creative Commons Attribution-NonCommercial-ShareAlike 3.0.

Мягкий переплёт можно заказать на Amazon.

Книга написана Трэвисом Ротвеллом (Trevis Rothwell) и Джэймсом Янгманом (James Yongman)

The GNU C Reference Manual — это справочное руководство по языку C и направлено на стандарт ANSI C 1989, ISO C 1999 и GNU расширение стандартного C. Нужно отметить, что книга написана не для новичков, а скорее для тех, у кого есть опыт.

Книга включает следующие главы:

  • Лексические элементы — книга объясняет читателю лексические элементы, которые входят в исходный код на языке C после препроцессинга. Эти элементы называются токенами (token). Есть 5 типов токенов: ключевые слова, идентификаторы, константы, операторы и разделители.
  • Типы данных — рассматривает примитивные типы данных в языке C, enum, union, структуры, массивы, указатели, классификаторы и так далее
  • Выражения и операторы — такие вещи, как инкрементирование, декрементирование, арифметические операторы, комплексное сопряжение, операторы сравнения, логические операторы и так далее
  • Стейтменты — if statement, switch, while, do, for, null, goto, break, continue, return, typedef.
  • Функции — объявление функций, вызов функций, параметры функции и т.д
  • Структура программы — рассмотрение полной картины жизненного цикла программы
  • Программа на C — готовая программа, написанная на C, состоящая из исходного кода на C, а также заголовочного файла. По факту, эта программа — расширенная версия всем известного «hello world» и служит для того, что показать читателю, как правильно форматировать и структурировать код на языке C для использования в программах для FSF Project GNU

Книга находится под бесплатной лицензией GNU Free Documentation, версии 1.3.

Книга написана Марком Бюргсом (Mark Burgess) и Роном Хэйл-Эвансом (Ron Hale-Evans).

The GNU C Programming Tutorial представляет читателю базовые идеи в логическом порядке. Книга затрагивает все важные элементы языка C с упором на компилятор GNU/Linux и связанное с ним программное обеспечение.

Главы книги охватывают такие вещи, как функции, переменные, параметры, указатели, логические операторы, циклы, массивы, строки, ввод и вывод данных и многое другое.

Книга находится под бесплатной лицензией GNU Free Documentation License, версии 1.1.

Одна из лучших книг, написана Ником Парланте (Nick Parlante).

Стэнфордская статья по CS, которая в то же время являтеся источником, который описывает все ключевые особенности и техники использования языка C. Следует отметить, что всё описано очень кратко, так как книга направлена на программиста, который имеет опыт в использовании другого языка.

Содержание:

  • Вступление
  • Базовые типы данных и операторы
  • Структуры данных
  • Комплексные типы данных
  • Функции
  • Массивы и указатели
  • Standard Library Reference

По словам автора, книга находится под лицензией open-source.

Книга написана Брайаном «Бидж» Холл (Brian «Breej» Hall).

Автор пытается привести читателя из состояния полной растерянности до состояния абсолютного понимания материала, и делает он это с использованием языка C.

Содержание:

  • Написание кода и блоки кода
  • Переменные, выражения
  • Функции
  • Продолжение главы про переменные
  • Указатели
  • Структуры данных
  • Массивы
  • Строки
  • Динамическая память
  • Больше всего интересного — затрагиваются такие вещи, как 2-х и 3-х мерные массивы, пустые указатели, глобальные переменные и так далее
  • Библиотека iostream
  • Манипуляции со строками
  • Математика

Данная книга находится под лицензией Creative Commons Attribution-Noncommercial- No Derivative Works 3.0 License.

Книга написана Дженсом Густедтом (Jens Gustedt).

Книга призвана смотивировать читателя идти вверх и узнавать что-то новое. Она разделена на 5 отдельных частей:

  • Первая — базовые программы, написанные на языке C, их структура, как их использовать и так далее
  • Вторая — в этой части рассматриваются самые фундаментальные концепции и особенности языка C. Из них: типы данных, функции и операторы. Книга нацелена на то, чтобы дать читателю более глубокое понимание вещей, которые происходят в работающей программе
  • Третья — сердце языка C. Здесь идёт объяснение таких вещей, как указатели и модель памяти в языке C
  • Четвертая — более детальное описание таких вещей, как оптимизация, автоматизирование, потоки и так далее
  • Пятая — в последней части автор рассуждает о дальнейшем развитии языка C

Книга находится под лицензией Creative Commons Attribution-Noncommercial- No Derivative Works 3.0 License.

Книга написана Брайаном Гафом (Brian Gough).

Книга сама по себе, является этаким первым шагом в GNU C и C++ компиляторы — gcc и g++, которые являются частью GNU Compiler Collection (GCC).

Книга объясняет, как используются компиляторы. Основываясь на многолетних исследованиях, автор описывает читателю все самые важные аспекты GCC.

Содержание:
  • Вступление
  • Компилирование программы на языке C — в главе объясняется то, как скомпилировать программу на языке C, используя gcc. Программы могут быть скомпилированы с одного или нескольких исходных файлов, а так же системных файлов и header-файлов
  • Варианты компиляции — автор рассказывает читателю о малоизвестных фишках компиляторов в GCC. Это могут быть разные пути к библиотекам и include-файлам, использование дополнительных диагностик на ошибки, макросы препроцессора и диалекты языка C
  • Использование препроцессора — в данной главе идёт объяснение того, как используется препроцессор GNU C CPP, который является частью пакета GCC.
  • Компилирование и отладка
  • Компилирование с оптимизацией — GCC — это оптимизирующий компилятор. Он предоставляет широкий ряд опций, которые направлены на увеличение скорости, уменьшение размера файлов и так далее
  • Компилирование программы на C++ — здесь идёт объяснение того, как компилируются программы на C++ с помощью компилятора GCC
  • Различные опции под разные платформы — в данной главе автор рассказывает о различных опциях, доступных для разных платформ: Intel и AMD x86, расширение x86, x86 64-битные процессоры, DEC Alpha, SPARC, POWER/PowerPC, мультиархитектурная поддержка и так далее
  • Отладка — GCC предоставляет нам разные инструменты для диагностики проблем в процессе компиляции
  • Инструменты для компилятора — автор рассказывает о различных инструментах, которые могут быть полезны вместе с GCC. В них входят: GNU архиватор для создания библиотек, программы для покрытия кода тестами gprof и gcov и другие
  • Как работает компилятор — в данной главе рассказывается в деталях о том, как GCC преобразовывает исходный код в исполняемый файл. Компиляция — это процесс, в котором нужен сам компилятор GNU (через gcc или g++ интерфейсы), GNU сборщик as и GNU линкер ld.
  • Проверка скомпилированных файлов — некоторые полезные инструменты для проверки скомпилированных файлов
  • Распространённые ошибки — самые распространённые ошибки, возникающие во время использования gcc и g++. Каждая из ошибок представлена с описанием, возможной причиной и решением
  • Дополнительные материалы — если читатель чего-то не понял в процессе чтения, то автор приводит ряд полезных источников для более подробного изучения GCC

Книга находится под бесплатной лицензией GNU Free Documentation License.

Предлагаем вам ознакомиться ещё с рядом книг, которые можно скачать, но которые, к сожалению, находятся не под open-source лицензией, либо же информация о лицензии которых не ясна.

И под конец, моя рекомендация: приобретите каноничную книгу по языку C: The C Programming Language. Хоть она и не для начинающих, но очень часто упоминается как классическая книга для изучения C.

Подборка книг по C++ для любого уровня

Идеальная подборка книг для разработчиков

Книги по C и C++ | ProgBook

В самоучителе содержатся все необходимые нюансы параллельного программирования с применением OpenMP для создания современных высокопроизводительных параллельных вычислительных систем, обладающих общей памятью.Вся информация представлена в теоретическом виде с сопровождением наглядных примеров, при помощи которых читатель сможет быстрее освоить материал и запомнить его.

В книге «Параллельное программирование с использованием OpenMP» содержится только необходимая информация о параллельном программировании, которая направлена на создание производительных современных систем. Данная книга может использоваться в процессе подготовки специалистов в области программирования и информационных технологий. Автор книги М. П. Левин разработал собственную методику и изложил её в доступном виде для аспирантов и студентов высших учебных заведений аналогичного направления.

Основной бедой значительной части программистов, называющих себя специалистами по Си++, является то, что на самом деле они пишут на классическом Си с небольшими элементами объектного программирования. При таком подходе вся потенциальная мощь этого языка остаётся совершенно невостребованной. Стивен Прата, один из трёх авторов учебника «Язык Си», признанного лучшим учебным пособием по этому языку, программист и преподаватель программирования, составил этот учебник так, чтобы помочь читателю избежать подобных ошибок.

 

В процессе чтения книги вы ознакомитесь с такими необходимыми базовыми понятиями, как «нисходящее проектирование», когда глобальная задача разбивается на более мелкие части, которые легче уяснить для себя, «структурирование кода», когда листинг программы составляется таким образом, что циклы, условия, обработка исключений и иные логические элементы программы ясно видны даже при беглом взгляде на код, узнаете такие понятия объектно-ориентированного программирования, как наследование классов и структур, обработка исключительных ситуаций, научитесь пользоваться такими непростыми, но мощными средствами, как шаблонизатор классов и введёнными в 2011 году в стандарт языка понятиями «лямбда-функции», «семантики переноса», и «интеллектуальный указатель».

 

Так же, как и «Язык Си», новая книга Стивена Праты написана дружелюбным и понятным языком, не пугающим читателя и точно так же построена по схеме «небольшое лирическое отступление»-«теория вопроса»-«живой пример реализации»-«упражнение для самопроверки». Помимо объяснения собственно синтаксиса языка и его отличий от Си книга содержит сотни примеров программ, имеющих практическое применение, а также обучает использованию библиотеки шаблонов STL, наиболее полно использующей возможности Си++. Самоучитель по программированию «Язык программирования C++. Лекции и упражнения» Стивена Праты предназначен как студентам технических специальностей, обучающимся объектно-ориентированному программированию «с нуля», так и профессиональным программистам, желающим ознакомиться с новым ISO стандартом «Си++ 2011».

Компанией Borland выпущен продукт Borland C++ Builder для быстрого создания приложений на C++. Эта интегрированная среда разработки сочетает в себе гибкость и мощность языка C++ с удобством Visual Basic. Данная книга – это отличная возможность освоить C++ Builder в полной мере за минимальное время. С изучением ее материалов результативность вашей работы существенно повысится.

Быстрое создание приложений на C++ превосходно воплощается Borland C++ Builder. Встроенный редактор интерфейса позволяет существенно упростить процесс программирования и делает разработку визуально наглядной. С этим сборником вы научитесь правильно обращаться с расширенными формами, управлять базами данных собственными разработками приложений.

Узнаете об использовании элементов управления ActiveX и VCL. А сложные приложения на C++ станут намного проще с Borlnd C++ Builder. Книга «Borland C++ Builder. Библиотека программиста» поможет выйти на качественно новый уровень разработок приложений. Автор Мэтт Теллес.

В первых главах даются базовые представления о структуре языка – рассматриваются типы данных, переменные, операторы, функции, объекты. За ними очерчиваются формы более сложных элементов объектно-ориентированного программирования — классов. В последующих частях книги объясняются механизмы обработки исключений, шаблоны, концепция пространства имен, способы реализации динамической идентификации типов, структура стандартной библиотеки шаблонов STL, приводится справочная информация по ключевым словам среды .NET.

Герберт Шилдт, автор всемирно известных бестселлеров по программированию на Java, C, и C#, в своей книге «C++: базовый курс» дает исчерпывающую информацию по всем основным элементам программирования на C++, которая будет полезна и новичкам, и опытным программистам.

Шахматы, шашки, крестики-нолики, уголки – у всех этих и многих других подобных игр есть некоторые общие особенности, которые позволяют применять при их программировании схожие решения. Методы перебора, статистические понятия, хеш-таблицы, эвристический анализ – вот неполный перечень описываемых в данном томе приемов, которые принято использовать при создании логических игр.

К книге Евгения Корнилова «Программирование шахмат и других логических игр» прилагается компакт-диск с наиболее известными, свободными кодами шахматных программ и текстами программ самого автора.

В книге описаны основы синтаксиса и методика разработки приложений на нескольких объектно-ориентированных языках программирования: C++/CLI, C# и Java (J#). Особенностью изложенного в книге материала является параллельное сравнивание на конкретных примерах схожих языковых конструкций. Добавочно каждая из программ для более наглядного понимания взаимосвязи между объектами поясняется UML диаграммами.

Более детально рассмотрены такие сложные для самостоятельного изучения конструкции языка, как делегаты, события, потоки и их синхронизация.
Подробно описаны особенности синтаксиса и использования в каждом из трех языков.

Книга Медведева В. И. «Особенности объектно-ориентированного программирования на C++/CLI, C# и Java» будет полезна для изучения преподавателям и студентам профильных ВУЗов, а также профессионалам, имеющих опыт программирования на C++ и желающих освоить разработку на других языках.

Этот учебник C++ может использоваться как преподавателями учебных заведений, так и для самостоятельного изучения языка программирования. Он разделён на несколько частей, посвящённых собственно основам языка и программирования в целом, особенностям среды Visual C++, процессу отладки кода, особенностям программирования под Windows. Каждый из рассматриваемых вопросов имеет практические приложения, часть из которых читателю предлагается выполнить самостоятельно. Во многом «Visual C++ 2010. Полный курс» Хортона напоминает классические университетские учебники, поэтому он хорошо подойдёт приверженцам системного усвоения знаний.

В книге освещены все этапы создания приложения для Windows 95 и рассмотрено большинство проблем, которые могут возникнуть на этом пути. Хотя примеры программ приведены на С, рассказ опирается на возможности самой системы, а не на особенности конкретных языков или библиотек, поэтому многие курсы обучения начинаются именно с «Программирования для Windows 95» Петзольда. В первом томе рассматриваются базовые принципы программирования, обмен информацией между компьютером и периферийными устройствами, использование графического интерфейса пользователя. Второй посвящён более глубоким вопросам – управлению ресурсами и взаимодействию между приложениями.

В книге освещены все этапы создания приложения для Windows 95 и рассмотрено большинство проблем, которые могут возникнуть на этом пути. Хотя примеры программ приведены на С, рассказ опирается на возможности самой системы, а не на особенности конкретных языков или библиотек, поэтому многие курсы обучения начинаются именно с «Программирования для Windows 95» Петзольда. В первом томе рассматриваются базовые принципы программирования, обмен информацией между компьютером и периферийными устройствами, использование графического интерфейса пользователя. Второй посвящён более глубоким вопросам – управлению ресурсами и взаимодействию между приложениями.

«Практикум по программированию на С++» — это практический курс, направленный на обучение читателя программированию на C и C++. Практикум содержит почти 200 программных решений и 300 тестовых заданий по более чем 20 темам — от самых простейших вычислений, до обработки двоичных файлов. Отдельной главой в книге выделен материал, посвященный развитию у читателя навыков «чтения» и анализа готовых программных решений, увеличению «словарного запаса» программиста.

«Практикум по программированию на С++», составленный Е.Л. Романовым, рекомендуется студентам, обучающимся на факультетах информатики, а также всем тем, кто желает самостоятельно изучать язык C и технологии программирования на этом языке. Также, книга будет полезна преподавателям — в практикуме содержатся лабораторные работы, а материал его вполне можно разбить на 2-3 семестра.

Программирование на C для чайников


Научитесь программировать! Полное руководство по языку программирования C!

Язык C является проверенным временем языком программирования, позволяющим создавать компактные и эффективно работающие программы, а данная книга содержит всю необходимую информацию для того, чтобы начать программировать, и ничего лишнего. Она рассчитана на совершенно незнакомых с программированием людей и излагает все вопросы с нуля. Книга полна конкретных примеров, помогающих сложить кусочки разных тем в мозаику языка программирования.

  • Как исппользовать базовые блоки языка С. Вы узнаете, что такое переменные, как принимать решения в программе, как повторно выполнять одни и те же действия в циклах.
  • Как работать с операторами. Вы научитесь работать с различными операторами языка программирования С, узнаете об их приоритетах и о том, какие бывают операторы — математические, логические, сравнения и другие.
  • Что такое массивы и указатели. Вы узнаете, что такое массивы, как они располагаются в памяти, и как обращаться к их элементам. Вы познакомитесь с понятием указателя и научитесь использовать указатели в своих программах.
  • Как писать сложные программы. Вы узнаете, как использовать библиотечные функции и как писать собственные функции. Вы научитесь создавать программы из нескольких модулей, тестировать и отлаживать их.
  • Как работать с файлами. Вы сможете не только выводить результаты работы на экран, но и записывать их в файл. Вы научитесь читать и записывать файлы, а также выполнять над ними различные действия — например, копировать, удалять или переименовывать их.

Основные темы книги:

  • синтаксис языка С
  • структура и составные части программы
  • переменные, структуры, массивы и указатели
  • функции и библиотеки
  • форматированный ввод-вывод
  • работа с файлами

Об авторе

Дэн Гукин пишет об информационных технологиях более 25 лет. Сочетание профессионализма и увлеченности обеспечивает написание им книг, которые при высокой информативности оказываются вовсе не скучными учебниками, а носят скорее развлекающий характер. Дэном написано более 130 книг с общим тиражом в 12 млн экземпляров, переведенных более чем на 30 языков.

Книга обсуждается в отдельном сообщении в блоге Виктора Штонда.


Расскажи про книгу своим друзьям и коллегам:

Твитнуть


Нравится

книги — Хорошая книга по C

книги — Хорошая книга по C — Stack Overflow на русском

Stack Overflow на русском — это сайт вопросов и ответов для программистов. Присоединяйтесь! Регистрация займёт не больше минуты.

Присоединиться к сообществу

Любой может задать вопрос

Любой может ответить

Лучшие ответы получают голоса и поднимаются наверх

Вопрос задан

Просмотрен 31k раза


Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы на него можно было дать ответ, основанный на фактах и цитатах.

Закрыт 5 лет назад.

Решил учить азы языка C. Кто-нибудь может посоветовать хорошую книгу? Друг дал почитать «M. Уэйт, С. Прата, Д. Мартин — Язык Си руководство для начинающих», но эта книга старше меня.

Grundy♦

72.7k77 золотых знаков6464 серебряных знака123123 бронзовых знака

задан 27 мар ’12 в 6:51

zenithzenith

2,41622 золотых знака2121 серебряный знак4646 бронзовых знаков

5

Подкину несколько наименований полезных книг, правда с точки зрения преподавателя 😉

  • K. N. King. C Programming: A Modern Approach, 2nd Edition.
    На мой взгляд лучший учебник по языку C, покрывающий C99. Разобраны все 24 заголовочных файла стандартной библиотеки C99 с таким уровнем детализации, которого я больше не видел нигде. Является основным учебником по программированию на языке C во многих американских колледжах. К сожалению на русский язык книга не переводилась, но 100-мегабайтный PDF английского издания легко находится в сети.
  • Manuel Bermudez. Study Guide for C Programming: A Modern Approach.
    Руководство к описанному выше учебнику. На русском также не найти.
  • Randal Bryant and David O’Hallaron. Computer Systems: A Programmer’s Perspective (2nd Edition).
    Эту книгу я упоминал здесь уже несколько раз. Она не о языке C — она об архитектуре компьютера и поведении компилятора с точки зрения программиста на C. В ней можно найти ответы на такие вопросы как «почему компилятор как правило преобразует циклы к форме do-while?», «как использовать switch, чтобы его машинная реализация была эффективней каскадного if?», «как работает компоновщик?», «почему оптимизирующий компилятор не может соптимизировать казалось бы очевидный код и как писать код, чтобы получить максимум от оптимизации?» и многие другие. Издавалась на русском языке ограниченным тиражом, английский вариант элементарно находится в сети.
  • Stephen Kochan. Programming in C (3rd Edition).
    Хороший, добротный учебник. Издавался на русском языке.
  • Richard Heathfield and Lawrence Kirby. C Unleashed.
    Философская книга для уже знающих язык. Должна быть на книжной полке каждого программиста на языке C. На русском языке издавалась под названием «Искусство программирования на C», несложно найти PDF/DJVU. Дик Хэзфилд также широко известен своими статьями по глубокому исследованию проблем программирования на языке C (примерно как Андрей Александреску на C++).