Operador de flecha -> en C/C++ con ejemplos

Un operador Flecha en C/C++ permite acceder a elementos en Estructuras y Uniones . Se utiliza con una variable puntero que apunta a una estructura o unión . El operador de flecha se forma usando un signo menos, seguido del símbolo mayor que, como se muestra a continuación. 
Sintaxis:  

(pointer_name)->(variable_name)

Operación: El operador -> en C o C++ da el valor que tiene nombre_variable a la variable de estructura o unión nombre_puntero.
Diferencia entre el operador Punto (.) y Flecha (->):  

  • El operador Punto(.) se utiliza normalmente para acceder a los miembros de una estructura o unión.
  • El operador Arrow(->) existe para acceder a los miembros de la estructura oa las uniones usando punteros.

Ejemplos: 

  • Operador de flecha en la estructura:

C++

// C++ program to show Arrow operator
// used in structure
#include <iostream>
using namespace std;
 
// 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
    cout <<" "<< emp->age;
 
    return 0;
}
 
// This code is contributed by shivanisinghss2110

C

// 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;
}
Producción: 

18

 

  • Operador flecha en uniones:

C++

// 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

C

// C program to show Arrow operator
// used in structure
 
#include <stdio.h>
#include <stdlib.h>
 
// 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
    printf("%d", emp->age);
}
Producción: 

18

 

Publicación traducida automáticamente

Artículo escrito por avsadityavardhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *