Open In App

array::at() in C++ STL

Last Updated : 19 Jan, 2018
Improve
Improve
Like Article
Like
Save
Share
Report


Array classes are generally more efficient, light-weight and reliable than C-style arrays. The introduction of array class from C++11 has offered a better alternative for C-style arrays.

array::at()
This function is used to return the reference to the element present at the position given as the parameter to the function.

Syntax:

array_name.at(position)

Parameters:
Position of the element to be fetched.

Return: It return the reference to the element at the given position.

Examples:

Input:  array_name1 = [1, 2, 3]
        array_name1.at(2);
Output: 3

Input:  array_name2 = ['a', 'b', 'c', 'd', 'e']
        array_name2.at(4);
Output: e




// CPP program to illustrate
// Implementation of at() function
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
    // Take any two array
    array<int, 3> array_name1;
    array<char, 5> array_name2;
      
    // Inserting values
    for (int i = 0; i < 3; i++)
        array_name1[i] = i+1;
      
    for (int i = 0; i < 5; i++)
        array_name2[i] = 97+i;
          
    // Printing the element 
    cout << "Element present at position 2: " 
         << array_name1.at(2) << endl;
    cout << "Element present at position 4: " 
         << array_name2.at(4);
      
    return 0;
}


Output:

Element present at position 2: 3
Element present at position 4: e

Time Complexity: Constant i.e. O(1).

Application:
Given an array of integers, print integers in alternate fashion starting from 1st position.

Input:  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Output: 2 4 6 8 10




// CPP program to illustrate
// application of at() function
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
    // Declare array
    array<int, 10> a;
      
    // Inserting values
    for (int i = 0; i < 10; i++)
        a[i] = i+1;
          
    for (int i = 0; i < a.size(); ++i) {
        if (i % 2 != 0) {
            cout << a.at(i);
            cout << " ";
        }
    }
    return 0;
}


Output:

2 4 6 8 10 


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads