C++ Array Library - data() Function


The C++ function std::array::data() return a pointer pointing to the first element of the array container. As array stores all elements in contigious memory location we can use this poiter to perform all valid operations on array.


Following is the declaration for std::array::data() function form std::array header.

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



Return Value

Returns a pointer to the first element of the array. If array object is const-qualified this method returns const object otherwise it returns non-const object.


This member function never throws exception.

Time complexity

Constant i.e. O(1)


The following example shows the usage of std::array::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;

   /* pointer to the first element of character array. */
   p = s.data();

   /* print string contents */
   cout << p << endl;

   q = p;

   /* print string using pointer arithmatic */
   while (*q) {
      cout << *q;

   cout << endl;

   return 0;

Let us compile and run the above program, this will produce the following result −

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