#5. Переменные и их базовые типы. Модификаторы unsigned и signed | Язык C для начинающих

preview_player
Показать описание


Что из себя представляют переменные языка Си. Правила выбора имени и написания переменных. Базовые типы данных: char, short, int, long, long long, float, double, long double. Модификаторы unsigned и signed
Рекомендации по теме
Комментарии
Автор

Изучаю у Вас SQLite .. Уже не знаю, куда ставить второй лайк на видео) Четко, без воды, понятно и доступно! И ни за какие курсы платить не надо! ВЫ-ЛЕГЕНДА! Я Вам очень сильно благодарен за такую работу! Всем добра и счастья!)

stepanbrop
Автор

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

ivanovv
Автор

Ура! Новый урок! Посмотрел с удовольствием. Знаю немного пайтон, очень интересно посмотреть на программирование со стороны языка С. Спасибо большое

ГубкаБоб-ръ
Автор

Большое спасибо за работу! Просмотр материала - удовольствие!

siarheiulas
Автор

Зачет !!!! Уникальный канал.... Спасибо автору за достойную работу!

jirniy_bob
Автор

И снова лайк за проделанную работу!!! Нужные уроки, качественная подача материала, заодно и память освежу!!!

AlexRootx
Автор

Формально, по стандарту C99 типы char, signed char и unsigned char - это три разных типа. Фактически на практике char обычно эквивалентен signed char или unsigned char - зависит от компилятора (вернее, от настроек компилятора).
Для облегчения переносимости есть стандартный заголовочный файл stdint.h, где задаются типы вроде int16_t (равно 16 бит), чтобы не зависеть от длины целых типов на разных платформах.

olegkomlev
Автор

Как говорится, "Си мы любим не за это" 😊

ilyanh
Автор

Есть вопрос, после компиляции программы с переменными ячейка памяти освобождактся или как?

twetowncity
Автор

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

zhenia
Автор

Спасибо большое за Ваши выпуски! Скажите, а есть возможность задавать переменные как ссылки, как, например, в PHP или в Rust? Например, создавать $a = 5, $b = &$a, при этом они ссылаются на одну и ту же область памяти, и меняя $b, меняется и $a? Это могло бы повысить быстродействие и помогло бы реализовать отложенные вычисления, как сделано в PHP.

Jheronimus_Bosch
Автор

Непонятно по поводу *char* . Она как символ и она же как число. Правильно понимаю, что её создали для работы с символами, но потом посидели, почесали затылки и её же определили как однобайтовый тип для чисел, чтоб не плодить ещё 1 схожий тип данных но только для чисел? И отличие её от например short не только в размере, но и в умении конвертировать символ-число-символ? Получается тип char медленее типа short ?

grayich
Автор

Здравствуйте! Очень благодарна Вам за канал, за ваш труд. Вы можете записать видео по сегментации медицинских снимков? 🙏🙏🙏

Dina-scks
Автор

Занятно, получается тип "строка" в Си нет, а есть лишь набор символов каждый из которых хранится в одной ячейке из 8 бит? Бедный char в ответе за всё. И еще вопрос, при записи в память char как я понял 1 байт это минимально допустимое выделение памяти. Т.е. число 2 будет записано как А можно ли в этом случае получать доступ к отдельному биту внутри ячейки байта?

VitalyBessonov
Автор

А после курса по С, курс по плюсам будет?

ДохлыйЁжик-зб
Автор

У меня рядом с переменными в режиме отладки сообщение: byte_memory = 100 '<error reading variable>. Почему такое может быть?

mikhailiurin
Автор

Хм.. может, конечно, от компилятора зависит, но у меня char тоже по умолчанию знаковый, и после 127 идёт переполнение. А если указываю unsigned, то 128, 129 и т.д. уже нормально записывает.

zmirk
Автор

Начинать имена обычных переменных с подчеркивания не следует, т.к. обычно так называются особые "системные" переменные.

olegkomlev
Автор

Вот только не понял, как в памяти хранится, знаковый или беззнаковый тип, хранятся же они одинаково

asjvchnvh
Автор

// Почему компилятор не ругается, если в "signed char a;" поместить число 128,
// которое превышает диапазон от -128 до 127
// в отладчике будет a=-128
signed char a;
a=128;

// И для int аналогично int диапазон от -2 147 483 648 до 2 147 483 647
int x;
x=2147483648;
// в отладчике будет x=-2147483648

stolebyte