当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ string at()用法及代码示例


std::string::at可用于从给定字符串中按字符提取字符。

它支持两种具有相似参数的不同语法:
语法1:

char& string::at (size_type idx)

语法2:


const char& string::at (size_type idx) const

idx: index number
Both forms return the character that has the index idx (the first character has index 0).
For all strings, an index greater than or equal to length() as value is invalid.
If the caller ensures that the index is valid, she can use operator [], which is faster.

返回值:Returns character at the specified position in the string.

异常:Passing an invalid index (less than 0 
or greater than or equal to size()) throws an out_of_range exception.
// CPP code to demonstrate std::string::at 
  
#include <iostream> 
using namespace std; 
  
// Function to demonstarte std::string::at 
void atDemo(string str) 
{ 
    cout << str.at(5); 
  
    // Below line throws out of 
    // range exception as 16 > length() 
    // cout << str.at(16); 
} 
  
// Driver code 
int main() 
{ 
    string str("GeeksForGeeks"); 
    atDemo(str); 
    return 0; 
}

输出:

F

Application

std::string::at可用于从字符串中提取字符。这是相同的简单代码。

// CPP code to extract characters from a given string 
  
#include <iostream> 
using namespace std; 
  
// Function to demonstarte std::string::at 
void extractChar(string str) 
{ 
    char ch; 
  
    // Calculating the length of string 
    int l = str.length(); 
    for (int i = 0; i < l; i++) { 
        ch = str.at(i); 
        cout << ch << " "; 
    } 
} 
  
// Driver code 
int main() 
{ 
    string str("GeeksForGeeks"); 
    extractChar(str); 
    return 0; 
}

输出:

G e e k s F o r G e e k s 


相关用法


注:本文由纯净天空筛选整理自 string at() in C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。