Программирование

Программирование на C. Часть 2

В прошлом уроке мы написали Hello, World на Си и поняли, что это круто. А сегодня мы будем рассматривать саму суть любой программы — переменные. А их в Си over9000 много видов, но сегодня мы рассмотрим пока только численные.

Из целочисленных:

char — один байт, обычно 8 бит. В неё можно впихнуть целый символ. Не спрашивайте, как.
short — короткое число, чаще всего в 2 раза короче, чем int.
int — обычное число, на x86 32 бита.
long — длинное число, на x86 32 бита, но на 64-битных x86-системах в зависимости от компилятора может быть как 32 бита, так и 64.
Числа с плавающей точкой:
float — 32 бита.
double — 64 бита.

Чем они примечательны

Перед объявлением любой из вышеперечисленных переменных можно поставить слово signed или unsigned. Что нам это даст? Переменная будет содержать только неотрицательные числа. И их будет больше. К примеру, int в состоянии по умолчанию — signed — будет представлять значения от −2147483648 (-2^31) до 2147483647 ((2^31)−1), а в unsigned — от 0 до 4294967295. Конечно, на разных платформах эти значения могут меняться.

И void — нуль. Не совсем нуль, но нуль. Пока хватит.
Что интересно, когда функция возвращает значения, она должна указать их тип, например функция void abc(a, b, c){ … не возвратит вам ничего, даже кода ошибки, если таковая имеется.

В качестве наглядного примера напишем функцию вычисления корней квадратного уравнения. Если кто плохо учился в школе, напомню, что с её помощью можно решить уравнение вида ax^2+bx+c=0.

Спасибо за внимание. Часть 1.

Вам также может понравиться...

7 комментариев

  1. grigor говорит:

    Отлично получается, хотя и про include хочется больше услышать.

    Как понимаю, здесь не ООП?

    1. SEVENID говорит:

      Нет, конечно. Тем и нравится.

    2. peregrine говорит:

      C не ООП язык, в отличие от C++, но не мешает использовать стиль ООП, хоть это и не нативно. Ярким примером тому может быть GTK, хотя это не очень хорошо использовать неправильные инструменты.

      1. SEVENID говорит:

        Сейчас любой более-менее популярный язык программирования можно назвать «неправильным инструментом». А уж библиотеки… Хотя насчёт графики в Си могу сказать определённо — это для мазохистов и тех, кому времени не жалко. Поэтому большая часть прикладных Сишных программ используют GUI других языков.

  2. peregrine говорит:

    SEVENID, а в С long, short, const и т.д. не принято называть спецификаторами? Или разводите зоопарк типов:
    long (long int)
    long double
    short (short int)
    Или я вру и C нет long double?

    1. SEVENID говорит:

      Скажем так, они могут быть и не быть спецификаторами. В зависимости от положения.
      Иначе как возможно такое объявление: long long?
      А long double в Си вроде есть, хотя я лично ни разу подобным не пользовался.

  3. peregrine говорит:

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *