C++ 文字列の長さを取得する(length/size)

C++の文字列の長さを取得するサンプルです。

目次

サンプル 文字列の長さを取得する(length)
  文字列の長さを取得する(size)

文字列の長さを取得する(length)

文字列.length()
  • 文字列の長さを返します。
  • 空文字の場合0を返します。

lengthで文字列の長さを取得するサンプルです。

#include <iostream>
using namespace std;


int main() {

	// 半角文字
	string str1 = "abc";
	cout << str1.length() << endl; //3

	// 日本語全角
	string str2 = "あいう";
	cout << str2.length() << endl; //6

	// 空文字の場合
	string str3 = "";
	cout << str3.length() << endl; //0

	// 半角空白の場合
	string str4 = " ";
	cout << str4.length() << endl; //1

	// 全角空白の場合
	string str5 = " ";
	cout << str5.length() << endl; //2

	// サロゲートペア文字列の場合
	string str6 = "????";
	cout << str6.length() << endl; //2

	return 0;
}

9行目は、半角文字です。
13行目は、日本語の全角文字です。
17行目は、空文字の場合で0を返しています。
21行目は、半角空白です。
25行目は、全角空白です。
29行目は、サロゲートペア文字です。

文字列の長さを取得する(size)

文字列.size()
  • 文字列の長さを返します。
  • 返す値は、lengthと同じです。
  • 空文字の場合0を返します。

sizeで文字列の長さを取得するサンプルです。

#include <iostream>
using namespace std;


int main() {

	// 半角文字
	string str1 = "abc";
	cout << str1.size() << endl; //3

	// 日本語全角
	string str2 = "あいう";
	cout << str2.size() << endl; //6

	// 空文字の場合
	string str3 = "";
	cout << str3.size() << endl; //0

	// 半角空白の場合
	string str4 = " ";
	cout << str4.size() << endl; //1

	// 全角空白の場合
	string str5 = " ";
	cout << str5.size() << endl; //2

	// サロゲートペア文字列の場合
	string str6 = "????";
	cout << str6.size() << endl; //2

	return 0;
}

9行目は、半角文字です。
13行目は、日本語の全角文字です。
17行目は、空文字の場合で0を返しています。
21行目は、半角空白です。
25行目は、全角空白です。
29行目は、サロゲートペア文字です。

関連の記事

C++ 文字列の位置を取得(find/rfind)
C++ 文字列の一部を取得するサンプル(substr)

△上に戻る