[c/ru] Fix typo: "большинствоа" -> "большинства" (#2723)

* [c/ru] Fix typo: "большинствоа" -> "большинства"

* [c/ru] Fix typo: "лигическое" -> "логическое"

* [c/ru] Fix typos
This commit is contained in:
Vitaly Volynsky 2017-05-11 00:09:16 +06:00 committed by ven
parent c97f310a5d
commit f4940fcc2e

View File

@ -11,7 +11,7 @@ lang: ru-ru
Что ж, Си всё ещё является лидером среди современных высокопроизводительных языков. Что ж, Си всё ещё является лидером среди современных высокопроизводительных языков.
Для большинствоа программистов, Си это самый низкоуровневый язык на котором они когда-либо писали, Для большинства программистов, Си это самый низкоуровневый язык на котором они когда-либо писали,
но этот язык даёт больше, чем просто повышение производительности. но этот язык даёт больше, чем просто повышение производительности.
Держите это руководство в памяти и вы сможете использовать Си максимально эффективно. Держите это руководство в памяти и вы сможете использовать Си максимально эффективно.
@ -170,7 +170,7 @@ int main() {
!0; // => 1 !0; // => 1
1 && 1; // => 1 (логическое И) 1 && 1; // => 1 (логическое И)
0 && 1; // => 0 0 && 1; // => 0
0 || 1; // => 1 (лигическое ИЛИ) 0 || 1; // => 1 (логическое ИЛИ)
0 || 0; // => 0 0 || 0; // => 0
// Битовые операторы // Битовые операторы
@ -229,7 +229,7 @@ int main() {
switch (some_integral_expression) { switch (some_integral_expression) {
case 0: // значения должны быть целыми константами (и могут быть выражениями) case 0: // значения должны быть целыми константами (и могут быть выражениями)
do_stuff(); do_stuff();
break; // если не написать break; то управление будет передено следующему блоку break; // если не написать break; то управление будет передано следующему блоку
case 1: case 1:
do_something_else(); do_something_else();
break; break;
@ -247,7 +247,7 @@ int main() {
// Каждое выражение в Си имеет тип, но вы можете привести один тип к другому, // Каждое выражение в Си имеет тип, но вы можете привести один тип к другому,
// если хотите (с некоторыми искажениями). // если хотите (с некоторыми искажениями).
int x_hex = 0x01; // Вы можете назначать переменные с помощью шеснадцатеричного кода. int x_hex = 0x01; // Вы можете назначать переменные с помощью шестнадцатеричного кода.
// Приведение типов будет пытаться сохранять цифровые значения. // Приведение типов будет пытаться сохранять цифровые значения.
printf("%d\n", x_hex); // => Prints 1 printf("%d\n", x_hex); // => Prints 1
@ -288,14 +288,14 @@ int main() {
// Для того, чтобы получить значение по адресу, напечатайте * перед именем. // Для того, чтобы получить значение по адресу, напечатайте * перед именем.
// Да, * используется при объявлении указателя и для получении значения по адресу // Да, * используется при объявлении указателя и для получении значения по адресу
// немного запутано, но вы привыкнете. // немного запутано, но вы привыкнете.
printf("%d\n", *px); // => Напечаатет 0, значение перемененной x printf("%d\n", *px); // => Напечатает 0, значение перемененной x
// Вы также можете изменять значение, на которое указывает указатель. // Вы также можете изменять значение, на которое указывает указатель.
(*px)++; // Инкрементирует значение на которое указывает px на единицу (*px)++; // Инкрементирует значение на которое указывает px на единицу
printf("%d\n", *px); // => Напечатает 1 printf("%d\n", *px); // => Напечатает 1
printf("%d\n", x); // => Напечатает 1 printf("%d\n", x); // => Напечатает 1
// Массивы удобно использовать для болшого количества однотипных данных. // Массивы удобно использовать для большого количества однотипных данных.
int x_array[20]; int x_array[20];
int xx; int xx;
for (xx = 0; xx < 20; xx++) { for (xx = 0; xx < 20; xx++) {
@ -308,7 +308,7 @@ int main() {
// Это работает, потому что при обращении к имени массива возвращается // Это работает, потому что при обращении к имени массива возвращается
// указатель на первый элемент. // указатель на первый элемент.
// Например, когда массив передаётся в функцию или присваивается указателю, он // Например, когда массив передаётся в функцию или присваивается указателю, он
// невявно преобразуется в указатель. // неяввно преобразуется в указатель.
// Исключения: когда массив является аргументом для оператор '&': // Исключения: когда массив является аргументом для оператор '&':
int arr[10]; int arr[10];
int (*ptr_to_arr)[10] = &arr; // &arr не является 'int *'! int (*ptr_to_arr)[10] = &arr; // &arr не является 'int *'!
@ -457,7 +457,7 @@ int area(const rect *r) {
void str_reverse_through_pointer(char *str_in) { void str_reverse_through_pointer(char *str_in) {
// Определение функции через указатель. // Определение функции через указатель.
void (*f)(char *); // Сигнатура должна полность совпадать с целевой функцией. void (*f)(char *); // Сигнатура должна полностью совпадать с целевой функцией.
f = &str_reverse; // Присвоить фактический адрес (во время исполнения) f = &str_reverse; // Присвоить фактический адрес (во время исполнения)
// "f = str_reverse;" тоже будет работать. // "f = str_reverse;" тоже будет работать.
//Имя функции (как и массива) возвращает указатель на начало. //Имя функции (как и массива) возвращает указатель на начало.