freeCodeCamp/guide/russian/c/index.md

135 lines
15 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: C
localeTitle: С
---
# Привет, мир! - Ваша первая программа C
## Получение максимальной отдачи от курса
Перед тем, как двигаться дальше, убедитесь, что вы довольны всеми концепциями в этой части руководства. Получение вашей первой программы важно, потому что она позволит вам следовать вместе с примерами, что еще одна хорошая вещь - практика делает совершенным! Понятия, которые могут ввести в заблуждение, будут содержать аннотацию, связанную с приложением. Если вы не понимаете концепцию, убедитесь, что вы обратитесь к приложению за дополнительной информацией.
## Цель курса
Цели этого курса - научить язык C начинающим. В идеале, кто-то, кто никогда не касался компьютерного языка, не сможет узнать C, следуя этим руководствам. Тем не менее, они по-прежнему будут полезны для более опытных программистов, включив резюме в конце каждой статьи. Хотя содержание, которое здесь описано, можно передавать на микроконтроллеры, такие как Arduino, это не является предметом настоящего руководства.
## Что такое C?
C - язык программирования общего назначения, изобретенный Деннисом Ричи в период с 1969 по 1973 год в Bell Labs. С тех пор он используется для создания таких вещей, как ядро Linux, которое позволяет программному обеспечению взаимодействовать с оборудованием в операционных системах на базе Linux. Он может сделать это и другие операции низкого уровня, потому что он был разработан так, чтобы быть очень близким к машинным кодам, будучи все еще доступным для человека. Из-за этого он обеспечивает прямой доступ к компьютерной памяти и аппаратным средствам. Это делает его очень полезным в аппаратных и робототехнических приложениях, где быстрый доступ к этим функциям очень важен. C, как и другие языки низкого уровня, требует компиляции. Процесс компиляции принимает код C, который может быть прочитан человеком и превращает его в код, который может быть прочитан и выполнен компьютером. Компиляция требует компилятора, который может использоваться из командной строки или может использоваться в среде IDE.
Если вы предпочитаете использовать командную строку, рассмотрите `gcc` . Его можно найти по умолчанию в GNU + Linux операционных системах и на Mac, и легко попасть в Windows. Однако для новичков может быть более комфортной IDE. Рассмотрим CodeBlocks или Xcode, если вы заинтересованы в возможности писать и запускать код из графического интерфейса.
Теперь, когда у вас есть этот фон, давайте начнем с нашей программы «Hello, World». «Hello, World» - это традиционный способ начать работу с языка: он показывает, что мы можем писать код и запускать его, поэтому это хорошее место для начала!
## Привет мир в C
```C
#include <stdio.h>
int main(void)
{
printf("hello, world\n");
return 0;
}
```
Давайте разложим эту программу поэтапно.
Сначала находится `#include` :
```C
#include <stdio.h> // This is called preprocessor directives
```
Это инструкция для компилятора, чтобы найти и включить набор файлов заголовков. Заголовочные файлы содержат дополнительный код, который мы можем использовать. В этом случае компилятору было предложено включить `<stdio.h>` , который содержит все полезные функции, такие как `printf()` . Мы также можем записать его как `#include"stdio.h"` . Мы подробно рассмотрим, какие функции будут позже, но пока просто помните, что функция представляет собой набор кода, который мы можем использовать.
```C
int main(void)
{
}
```
Этот код объявляет основную функцию. Основная функция - специальная - она ​​всегда будет вызываться и всегда является «основной» частью вашей программы. Если это не в вашей программе, ваша программа не может работать и не будет компилироваться.
Запуск объявления функции с помощью `int` означает, что эта функция даст значение `int` когда оно будет выполняться через его код, - это выход этой функции. `int` - это тип данных «integer», а целые числа - целые числа, такие как -3, 0 или 18. Таким образом, мы знаем, что этот код будет работать, и когда это будет сделано, оно вернет нам целое число. По соглашению это целое число равно 0.
Далее `main` . `main` - это имя этой функции, и, как вы узнали ранее, важно иметь `main` функцию, потому что ваша программа не будет работать без нее. `main` следует `(void)` . Это говорит компилятору, что эта функция не принимает никаких параметров, что означает, что у нее нет ввода.
Это может не иметь большого смысла прямо сейчас, но вы узнаете больше об этом, когда начнете читать о функциях в C позже. На данный момент просто помните, что для вашей программы C требуется `main` функция, она не принимает никаких данных, и она дает номер в качестве вывода.
Наконец, есть скобки: `{` и `}` . Они отмечают начало и конец функции. Открытая фигурная скобка ( `{` ) знаменует начало, а закрывающая фигурная скобка ( `}` ) обозначает конец. Все между ними находится внутри функции.
Теперь давайте посмотрим на мясо программы:
```C
printf("Hello, World!\n");
```
`printf` - это функция, которая берет текст и выводит его на экран. В скобках указывается, какую информацию мы хотим получить для `printf` и распечатать на экране. Мы показываем, что это строка, которую мы хотим напечатать, окружив ее в кавычки «вот так».
Обратите внимание, что \\ n найдено в кавычках - это говорит `printf` распечатать новую строку. Новая строка - это то, что печатается при нажатии на клавиатуре. Без явного указания C для печати новой строки все будет напечатано в той же строке.
Наконец, выражение printf () завершается точкой с запятой ( `;` ). Это показывает, что эта строка кода завершена. Без этого компилятор не знает, где заканчивается одна строка, а другая начинается, поэтому важно включить.
Программа заканчивается оператором return:
```C
return 0;
```
Это показывает, что функция завершена и что она должна заканчиваться значением 0 для того, что запустило ее. Когда вы запускаете код на своем компьютере, это хорошо, потому что он позволяет другим программам лучше взаимодействовать с вашими.
Как и раньше, эта строка заканчивается точкой с запятой, чтобы указать, что линия завершена.
## Компиляция и запуск
Вы можете сохранить свой мировой файл hello так, как хотите, но ему нужно завершить расширение файла .c. В этом примере файл был назван «helloworld.c», потому что это ясное имя с расширением .c.
Существует много способов скомпилировать и запустить код C на вашем компьютере. Вот несколько:
#### Компиляция и запуск из командной строки с помощью GCC
Если вы используете Mac или GNU + Linux, у вас уже установлен GCC.
Чтобы запустить вашу программу на C, ее необходимо скомпилировать. Чтобы скомпилировать из командной строки с помощью gcc, выполните следующую команду с вашего терминала:
```shell
gcc -o helloworld ./helloworld.c
```
`gcc` - `gcc` Gnu C, и он скомпилирует файл C, который мы передаем, в программу, которую может запускать ваш компьютер.
`-o helloworld` сообщает GCC, что вы хотите, чтобы скомпилированный файл (выход gcc) был файлом под названием helloworld. Последняя часть команды указывает GCC, где можно скомпилировать файл C. Если вам неудобно перемещаться с командной строки, этот шаг будет сложным, но это нормально - его легко узнать и вернуться, или вы можете попробовать из IDE.
После того как вы его скомпилируете, выполните следующую команду:
```shell
./helloworld
```
Если все пошло хорошо, вы должны увидеть `Hello, World!` печатается на экране.
#### Компиляция и запуск C с помощью CodeBlocks
[Кодовые блоки можно скачать здесь.](http://www.codeblocks.org/downloads/26) Создайте новую программу с `file` -> `new` -> `file` , выберите источник C / C ++, выберите C как ваш язык и затем скопируйте текст helloworld.c, который вы читаете ранее. Скомпилируйте и запустите код с помощью `Build` -> `Build and Run` .
#### Компиляция и запуск C с Xcode
[Xcode можно скачать здесь.](https://developer.apple.com/xcode/)
#### Компиляция и запуск C с Dev-C ++
[Dev-C ++ можно скачать здесь.](https://sourceforge.net/projects/orwelldevcpp/) Создайте новую программу с `file` -> `new` -> `Source File` , затем скопируйте текст helloworld.c, который вы читаете ранее, а затем сохраните файл с `file` -> `save As` as hello.c, а затем скомпилируйте и запустите код с помощью `Execute` -> `Compile & Run` .
# Прежде чем продолжить ...
## Обзор
* C является языком языковых языков программирования.
* C использовался для повторной реализации операционной системы Unix.
* C полезен, потому что он маленький, быстрый и имеет доступ к низкоуровневым операциям. Из-за этого он широко используется в робототехнике, операционных системах и бытовой электронике, но не в таких вещах, как веб-страницы.
* Программа AC имеет несколько критических частей:
* Оператор include, который сообщает компилятору C, где можно найти дополнительный код, который будет использоваться в программе.
* Основная функция, в которой код сначала выполняется и требуется для компиляции.
* Вещи внутри этой основной функции, которая будет выполнена, включая оператор return, который закрывает программу и дает значение программе, которая ее вызвала.
* C необходимо скомпилировать для запуска.
* C может использоваться для доступа к конкретным аппаратным адресам и для выполнения пин-кода типа для соответствия требованиям внешнего интерфейса с низким спросом на системные ресурсы во время выполнения.