Open In App

std::basic_string::at in C++

Improve
Improve
Like Article
Like
Save
Share
Report

Returns a reference to the character at the specified location pos. The function automatically checks whether pos is the valid position of a character in the string (i.e., whether pos is less than the string length), throwing an out_of_range exception if it is not.

Syntax:

reference at (size_type pos);
const_reference at (size_type pos) const;
Parameters :
pos - position of the character to return
Return value :
Reference to the requested character
Exceptions :
Throws std::out_of_range if pos >= size().




// CPP program to access a character through
// std::basic_string::at 
#include <stdexcept>
#include <iostream>
  
int main()
{
    // String with valid indices from 0 to 2
    std::string str = "abc";
  
    // Printing size of string
    std::cout << "string size = " << str.size() << '\n';
  
    // Accessing out of bounds index
    try 
    {
        str.at(4) = 't';
    }
      
    // If error is generated, it is caught
    catch (std::out_of_range const& error) 
    {
        std::cout << error.what() << '\n';
    }
}


Output:

string size = 3
basic_string::at: __n (which is 4) >= this->size() (which is 3)

Last Updated : 19 Sep, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads