Стрелка -> Оператор в C с примерами

Оператор в C с примерами Программирование и разработка

Чтобы понять работу оператора Arrow, нам нужно понять, какой указатель стоит первым. В C ++ указатель существует как изменяемый объект, который всегда относится к местоположению некоторого другого изменяемого объекта практически любого типа данных, такого как int, char или float, поскольку мы уже учили. Точно так же можно использовать указатель на структуры с изменяемым указателем, указывающим на местоположение такой изменяемой структуры. В C / C ++ оператор Arrow может использоваться для доступа к элементам в Unions plus Structures. Его можно использовать вместе с такой переменной-указателем, которая указывает на структуру и объединение. Отрицательный знак предшествует знаку «больше» для построения оператора стрелки. В C или C ++ оператор -> присваивает содержимое изменяемого имени структурному имени или имени изменяемого указателя объединения.

Синтаксис

(pointer_name) -> (variable_name)

Пример 1

Чтобы подробнее рассказать о работе оператора стрелки, мы обсудим несколько примеров. Откройте свою систему Ubuntu 20.04 и войдите в нее. Откройте оболочку, нажав Ctrl + Alt + T или через панель поиска активности. Теперь убедитесь, что у вас настроен компилятор C в системе Ubuntu. Создайте новый файл с именем «main.c», используя сенсорную команду в терминале.

$ touch main.c

Файл будет создан в домашнем каталоге. Вы можете открыть файл, дважды щелкнув по нему, или через терминал, используя команду редактора «GNU» nano следующим образом:

$ nano main.c

В прилагаемом примере показано, как создавать с помощью указателя. Вы понимаете, что, возможно, заголовок массива (ptr bd-> name) является фиксированным указателем, который ссылается на 0-й элемент массива. Поскольку вы не можете использовать знак равенства (=) для выделения ему новой строки, используется метод strcpy (). Поскольку приоритет оператора стрелки (->) больше, чем приоритет оператора сокращения предшественника (-) в этой фразе, результат слов уменьшается на единицу после использования знака ->. Мы указали структуру с 4 элементами данных: имя, тип, возраст и цвет для категории птица. Изменяемая структура bird с именем bd определена и инициализирована. Описана структурная ссылочная переменная bd. Выражение & используется для определения местоположения bd для ptr bd. Инструкции printf () отображают информацию о птице. Поскольку вы не можете предоставить строковое значение для ptr_bd-> name с помощью знака равенства, мы использовали метод strcpy () для создания совершенно нового имени. Используя постфиксный оператор приращения, количество ptr_bd-> age увеличивается на единицу.

Читайте также:  NetBeans или Eclipse: сравнение IDE

Имейте в виду, что, возможно, операторы postfix ++ и -> имеют почти одинаковый приоритет и связаны слева направо. Однако, когда в уравнении используется postfix ++, сначала используется количество ptr_bd-> age, а затем его количество увеличивается на 1. Сохраните код и выйдите из файла, нажав Ctrl + S, а затем Ctrl + X. Имейте в виду, что, возможно, операторы postfix ++ и -> имеют почти одинаковый приоритет и связаны слева направо. Однако, когда в уравнении используется postfix ++, сначала используется количество ptr_bd-> age, а затем его количество увеличивается на 1. Сохраните код и выйдите из файла, нажав Ctrl + S, а затем Ctrl + X. Имейте в виду, что, возможно, операторы postfix ++ и -> имеют почти одинаковый приоритет и связаны слева направо. Однако, когда в уравнении используется postfix ++, сначала используется количество ptr_bd-> age, а затем его количество увеличивается на 1. Сохраните код и выйдите из файла, нажав Ctrl + S, а затем Ctrl + X.

Компилятор gcc выполнил компиляцию вышеуказанного кода C

Компилятор gcc выполнил компиляцию вышеуказанного кода C в оболочке с помощью приведенной ниже инструкции, за которой следует имя файла.

$ gcc main.c

Выполнение файла было выполнено после его компиляции с использованием приведенного ниже запроса в оболочке Ubuntu 20.04. На выходе отображается имя, тип, возраст и цвет птицы. Затем название птицы было изменено, а ее возраст увеличен на 1.

$./a.out

Пример 2

Для лучшего понимания оператора Arrow рассмотрим другой пример. Мы обновили код, как показано на изображении. Во-первых, мы создали структуру «человек» с некоторыми элементами данных, например, именем, возрастом и процентами. Затем мы создали объект структуры и присвоили ему значение NULL. Основная функция использовалась для управления кодом C. В этом основном методе структурной переменной emp была присвоена ячейка памяти с помощью метода malloc (). Значение структурной переменной «emp» было присвоено переменной «age» с помощью оператора стрелки. Затем он напечатает значение, присвоенное переменной age, и основной метод завершится. Сохраните код и верните его обратно в терминал, используя Ctrl + S и Ctrl + X одновременно.

Компиляция служебного кода C выполняется с помощью компилятора gcc следующим образом:

$ gcc main.c

Выполнение файла можно выполнить с помощью той же команды a.out, что и ниже. Выходные данные показывают значение переменной age как «45».

$./a.out

Пример 3

В этом примере мы увидим иллюстрацию использования оператора стрелки в структуре объединения. Следовательно, снова откройте файл main.c через терминал.

$ nano main.c

Мы обновили код и включили в него две библиотеки. Во-первых, мы создали объединенную структуру «человек» с теми же членами данных, например, именем, возрастом и процентом. Создан объект объединенной структуры. Основной метод запущен. Выполнение кода всегда будет запускаться из основного метода. В функции main изменяемому объединению «emp» была выделена ячейка памяти с помощью функции «malloc ()». Метод sizeof () был отброшен, чтобы получить размер объединения «человек». Значение «emp» объединенного изменяемого объекта было присвоено изменяемому «возрасту» с использованием оператора стрелки. После этого мы будем использовать оператор printf для печати значения, которое было присвоено изменяемому «возрасту», и основной метод завершается.

Компилятор gcc снова завершает компиляцию показанного выше кода. Вот почему мы должны использовать приведенную ниже инструкцию в вашей системе Ubuntu 20.04 для ее компиляции.

$ gcc main.c

Давайте еще раз выполним файл main.c, используя тот же запрос для выполнения в терминале системы Ubuntu 20.04. Вывод такой же, как вывод в приведенном выше примере для структуры.

$./a.out

Пример 4

Давайте рассмотрим последний пример, чтобы увидеть работу оператора стрелки на структуре. Откройте файл еще раз в редакторе «Nano».

$ nano main.c

Мы создали структуру «Драма» с двумя элементами данных: название и эпизоды, также известные как epi. В основном методе мы сделали объект структуры «Драма». Затем переменной «d» было предоставлено пространство памяти с помощью метода «malloc» и с использованием объекта структуры. Затем значение переменной «d» с помощью стрелочного указателя было присвоено одно за другим переменным «name» и «epi». Обе переменные выводятся в оболочке с помощью оператора printf.

Соберите свой код на C с помощью указанного ниже запроса:

$ gcc main.c

Выполнение кода командой a.out показало следующие результаты. Он сообщает нам название драмы и все ее эпизоды, на которые указывает стрелка.

$./a.out

Заключение

В этой статье мы эффективно разработали примеры стрелочного указателя. Мы также обсудили использование оператора стрелки в структуре и объединении. Надеюсь, это будет полезно для вас при использовании концепции операторов стрелок.

Оцените статью
bestprogrammer.ru
Добавить комментарий