Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

C++ Array::data() Function



The C++ std::array::data() function provides a direct pointer to the underlying array used by a array container. This function returns a pointer to the first element of the array, allowing access to the internal data.

Syntax

Following is the syntax for std::array::data() function.

value_type* data() noexcept;
const value_type* data() const noexcept;

Parameters

It does not accepts any parameter

Return Value

It returns a pointer to the data contained by the array object.

Exceptions

This function never throws exception.

Time complexity

Constant i.e. O(1)

Example 1

In the following example, we are going to consider the basic usage of the data() function.

#include <iostream>
#include <array>
using namespace std;
int main(void) {
   array < char, 128 > s = {"C++ standard library from tutorialspoint.com"};
   char * p, * q;
   p = s.data();
   cout << p << endl;
   q = p;
   while ( * q) {
      cout << * q;
      ++q;
   }
   cout << endl;
   return 0;
}

Output

Output of the above code is as follows −

C++ standard library from tutorialspoint.com
C++ standard library from tutorialspoint.com

Example 2

Consider the following example, where we are going to apply the data() function on the integer array.

#include <iostream>
#include <array>
using namespace std;
int main() {
   array < int, 10 > arr = {9,12,15,18,21,24,27,30,33,36};
   cout << "The array elements are ";
   for (auto it = arr.begin(); it != arr.end(); it++)
      cout << * it << " ";
   auto it = arr.data();
   cout << "\nThe first element = " << * it;
   it++;
   cout << "\nThe second element = " << * it;
   it++;
   cout << "\nThe third element = " << * it;
   return 0;
}

Output

Following is the output of the above code −

The array elements are 9 12 15 18 21 24 27 30 33 36 
The first element = 9
The second element = 12
The third element = 15

Example 3

Let's look at the following example, where we are going to consider th character array and applying the data() function.

#include <iostream>
#include <array>
using namespace std;
int main() {
   array < char, 3 > x = {'a','n','u'};
   cout << "The array elements are = ";
   for (auto it = x.begin(); it != x.end(); it++)
      cout << * it << " ";
   auto it = x.data();
   cout << "\nThe first element = " << * it;
   return 0;
}

Output

If we run the above code it will generate the following output −

The array elements are = a n u 
The first element = a
array.htm
Advertisements