С — переменные
Переменная — это не что иное, как имя, присвоенное области хранения, которой могут манипулировать наши программы. Каждая переменная в C имеет определенный тип, который определяет размер и структуру памяти переменной; диапазон значений, которые могут храниться в этой памяти; и набор операций, которые можно применить к переменной.
Имя переменной может состоять из букв, цифр и символа подчеркивания. Оно должно начинаться либо с буквы, либо с символа подчеркивания. Прописные и строчные буквы различны, потому что C чувствителен к регистру. На основе основных типов, объясненных в предыдущей главе, будут следующие основные типы переменных —
Сер.№ | Тип и описание |
---|---|
1 | <тд>|
2 | <тд>|
3 | <тд>|
4 | <тд>|
5 | <тд>
Язык программирования C также позволяет определять различные другие типы переменных, которые мы рассмотрим в последующих главах, таких как перечисление, указатель, массив, структура, объединение и т. д. В этой главе давайте изучим только основные типы переменных.
Определение переменной в C
Определение переменной сообщает компилятору, где и сколько памяти нужно создать для переменной. Определение переменной указывает тип данных и содержит список из одной или нескольких переменных этого типа следующим образом —
01
Здесь введите должен быть допустимым типом данных C, включая char, w_char, int, float, double, bool или любой пользовательский объект; и список_переменных может состоять из одного или нескольких имен идентификаторов, разделенных запятыми. Здесь показаны некоторые допустимые объявления —
10пре>Строка int i, j, k; объявляет и определяет переменные i, j и k; которые предписывают компилятору создать переменные с именами i, j и k типа int.
Переменные могут быть инициализированы (присвоены начальное значение) в их объявлении. Инициализатор состоит из знака равенства, за которым следует константное выражение:
28Некоторые примеры —
32Для определения без инициализатора:переменные со статической продолжительностью хранения неявно инициализируются значением NULL (все байты имеют значение 0); начальное значение всех остальных переменных не определено.
Объявление переменной в C
Объявление переменной гарантирует компилятору, что существует переменная с заданным типом и именем, так что компилятор может продолжить компиляцию, не требуя полной информации о переменной. Определение переменной имеет значение только во время компиляции, компилятору необходимо фактическое определение переменной во время компоновки программы.
Объявление переменной полезно, когда вы используете несколько файлов и определяете свою переменную в одном из файлов, которые будут доступны во время компоновки программы. Вы будете использовать ключевое слово extern объявить переменную в любом месте. Хотя вы можете объявить переменную несколько раз в своей программе на C, ее можно определить только один раз в файле, функции или блоке кода.
Пример
Попробуйте следующий пример, где переменные были объявлены вверху, но они были определены и инициализированы внутри основной функции —
Живая демонстрация40Когда приведенный выше код скомпилирован и выполнен, он дает следующий результат —
58Та же концепция применяется к объявлению функции, когда вы указываете имя функции во время ее объявления, а ее фактическое определение может быть дано где угодно еще. Например —
61Lvalue и Rvalue в C
В C есть два вида выражений —
-
значение − Выражения, которые ссылаются на ячейку памяти, называются выражениями «lvalue». Lvalue может отображаться как в левой, так и в правой части присваивания.
-
значение − Термин rvalue относится к значению данных, которое хранится по некоторому адресу в памяти. Значение r — это выражение, которому не может быть присвоено значение, что означает, что значение r может появиться справа, но не слева от присваивания.
Переменные — это lvalue, поэтому они могут появляться в левой части присваивания. Числовые литералы являются значениями r, поэтому они не могут быть назначены и не могут отображаться в левой части. Взгляните на следующие допустимые и недопустимые утверждения —
73
Язык C
- Переменные C# и (примитивные) типы данных
- Область видимости переменной C#
- Переменные C++, литералы и константы
- C Переменные, константы и литералы
- Класс хранения C
- Глобальное ключевое слово Python
- Переменные и литералы Java
- Переменные и типы С++:int, double, char, string, bool
- Верилог Задания
- Java — типы переменных