Производные типы данных в C ++

Опубликовано: 29 Декабря, 2021

Типы данных - это средства для идентификации типа данных и связанных операций по их обработке. Есть три типа данных:

  1. Предопределенные типы данных
  2. Производные типы данных
  3. Пользовательские типы данных


В этой статье объясняется производный тип данных:

Производные типы данных

Типы данных, производные от примитивных или встроенных типов данных, называются производными типами данных. Они могут быть четырех типов, а именно:

  • Функция
  • Множество
  • Указатели
  • использованная литература

Давайте кратко разберемся с каждым из следующих производных типов данных:

  1. Функция: функция - это блок кода или программный сегмент, который определен для выполнения конкретной четко определенной задачи. Функция обычно определяется для того, чтобы избавить пользователя от необходимости снова и снова писать одни и те же строки кода для одного и того же ввода. Все строки кода объединены в одну функцию, и ее можно вызывать где угодно. main () - это функция по умолчанию, которая определена в каждой программе на C ++.

    Синтаксис:

     Тип функции Имя функции (параметры)

    Пример:

    // C++ program to demonstrate
    // Function Derived Type
    #include <iostream>
    using namespace std;
    // max here is a function derived type
    int max( int x, int y)
    {
    if (x > y)
    return x;
    else
    return y;
    }
    // main is the default function derived type
    int main()
    {
    int a = 10, b = 20;
    // Calling above function to
    // find max of 'a' and 'b'
    int m = max(a, b);
    cout << "m is " << m;
    return 0;
    }
    Выход:
    м 20
    
  2. Массив: массив - это набор элементов, хранящихся в постоянных ячейках памяти. Идея массива состоит в том, чтобы представить множество экземпляров в одной переменной.

    Синтаксис:

     DataType ArrayName [size_of_array];

    Пример:

    // C++ program to demonstrate
    // Array Derived Type
    #include <iostream>
    using namespace std;
    int main()
    {
    // Array Derived Type
    int arr[5];
    arr[0] = 5;
    arr[2] = -10;
    // this is same as arr[1] = 2
    arr[3 / 2] = 2;
    arr[3] = arr[0];
    cout<<arr[0]<< " " <<arr[1]<< " " <<arr[2]<< " " <<arr[3];
    return 0;
    }
    Выход:
    5 2 -10 5
    
  3. Указатели: указатели являются символическим представлением адресов. Они позволяют программам моделировать вызов по ссылке, а также создавать динамические структуры данных и управлять ими. Его общая декларация на C / C ++ имеет формат:

    Синтаксис:

     тип данных * var_name;

    Пример:

     int * ptr;   
    
    ptr указывает на адрес
    который содержит данные типа int

    Пример:

    // C++ program to illustrate
    // Pointers Derived Type
    #include <bits/stdc++.h>
    using namespace std;
    void geeks()
    {
    int var = 20;
    // Pointers Derived Type
    // declare pointer variable
    int * ptr;
    // note that data type of ptr
    // and var must be same
    ptr = &var;
    // assign the address of a variable
    // to a pointer
    cout << "Value at ptr = "
    << ptr << " " ;
    cout << "Value at var = "
    << var << " " ;
    cout << "Value at *ptr = "
    << *ptr << " " ;
    }
    // Driver program
    int main()
    {
    geeks();
    }
    Выход:
    Значение при ptr = 0x7ffc10d7fd5c
    Значение при var = 20
    Значение при * ptr = 20
    
  4. Ссылка: когда переменная объявляется как ссылка, она становится альтернативным именем для существующей переменной. Переменную можно объявить как ссылку, поставив в объявлении символ «&».

    Пример:

    // C++ program to illustrate
    // Reference Derived Type
    #include <iostream>
    using namespace std;
    int main()
    {
    int x = 10;
    // Reference Derived Type
    // ref is a reference to x.
    int & ref = x;
    // Value of x is now changed to 20
    ref = 20;
    cout << "x = " << x << endl;
    // Value of x is now changed to 30
    x = 30;
    cout << "ref = " << ref << endl;
    return 0;
    }
    Выход:
    х = 20
    ref = 30
    
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++