「std::string::data」の版間の差分
提供: C++入門
(ページの作成:「std::string::data() とは、std::stringのメンバ関数でstringオブジェクトの現在の値をヌルターミネートされたキャラクタシーク...」) |
(相違点なし)
|
2014年2月1日 (土) 19:55時点における最新版
std::string::data() とは、std::stringのメンバ関数でstringオブジェクトの現在の値をヌルターミネートされたキャラクタシークエンス(C-string)の配列へのポインタを返します。
読み方
- std::string::data
- えすてぃーでぃー すとりんぐ でーた
概要
C++11では、std::string::dataとstd::string::c_strは、同意語で、同じ値を返します。
std_string_data1.cpp の例
ソースコード std_string_data1.cpp
#include <iostream> #include <string> #include <cstring> using namespace std; int main(int argc, char const* argv[]) { string s1; // 12 34 56 s1 = string("a\0b\0c\0", 6); const char *p = NULL; p = s1.c_str(); for(int i = 0; i < 6; i++) { cout << i << ": " << p[i] << endl; } cout << endl; p = s1.data(); for(int i = 0; i < 6; i++) { cout << i << ": " << p[i] << endl; } cout << endl; cout << s1.length() << endl; cout << s1.c_str() << endl; cout << s1.data() << endl; return 0; }
コンパイル
g++ std_string_data1.cpp -o std_string_data1
実行例
% ./std_string_data1 0: a 1: 2: b 3: 4: c 5: 0: a 1: 2: b 3: 4: c 5: 6 a a
関連項目
メンバ関数 | 説明 |
---|---|
constructor | 文字列オブジェクトのコンストラクタ。stringの初期化について説明します。 |
destructor | 文字列オブジェクトのデストラクタ |
operator= | 文字列の割り当て。stringへの代入について説明します。 |
メンバ関数 | 説明 |
---|---|
std::string::c_str | C文字列を取得する |
std::string::data | 文字列データを取得する |
std::string::substr | 部分文字列の生成 |