Curso de C - Arrow operator -> in C/C++ with Examples

 

Arrow operator -> in C/C++ with Examples

  • Difficulty Level : Easy
  • Last Updated : 06 Sep, 2021

An Arrow operator in C/C++ allows to access elements in Structures and Unions. It is used with a pointer variable pointing to a structure or union. The arrow operator is formed by using a minus sign, followed by the greater than symbol as shown below. 
Syntax:  

(pointer_name)->(variable_name)

Operation: The -> operator in C or C++ gives the value held by variable_name to structure or union variable pointer_name.
Difference between Dot(.) and Arrow(->) operator:  

  • The Dot(.) operator is used to normally access members of a structure or union.
  • The Arrow(->) operator exists to access the members of the structure or the unions using pointers.

Examples: 

  • Arrow operator in structure:

// C program to show Arrow operator
// used in structure
 
#include <stdio.h>
#include <stdlib.h>
 
// Creating the structure
struct student {
    char name[80];
    int age;
    float percentage;
};
 
// Creating the structure object
struct student* emp = NULL;
 
// Driver code
int main()
{
    // Assigning memory to struct variable emp
    emp = (struct student*)
        malloc(sizeof(struct student));
 
    // Assigning value to age variable
    // of emp using arrow operator
    emp->age = 18;
 
    // Printing the assigned value to the variable
    printf("%d", emp->age);
 
    return 0;
}
Output: 
18

 

  • Arrow operator in unions:

// C++ program to show Arrow operator
// used in structure
#include <iostream>
using namespace std;
 
// Creating the union
union student {
    char name[80];
    int age;
    float percentage;
};
 
// Creating the union object
union student* emp = NULL;
 
// Driver code
int main()
{
    // Assigning memory to struct variable emp
    emp = (union student*)
        malloc(sizeof(union student));
 
    // Assigning value to age variable
    // of emp using arrow operator
    emp->age = 18;
 
    // DIsplaying the assigned value to the variable
    cout <<""<< emp->age;
}
 
// This code is contributed by shivanisinghss2110
Output: 
18
SHARE

Oscar perez

Arquitecto especialista en gestion de proyectos si necesitas desarrollar algun proyecto en Bogota contactame en el 3006825874 o visita mi pagina en www.arquitectobogota.tk

  • Image
  • Image
  • Image
  • Image
  • Image
    Blogger Comment
    Facebook Comment

0 comentarios:

Publicar un comentario