C++ の <string> ヘッダー ファイルと <cstring> ヘッダー ファイルの概要

C++ の <string> ヘッダー ファイルと <cstring> ヘッダー ファイルの概要

C++ では、<string> と <cstring> は 2 つの異なるヘッダー ファイルです。

<string>は、C++ 標準ライブラリのヘッダー ファイルです。これは、size()、length()、empty()、文字列の連結 (スプライシング) などの文字列に対する操作を提供する std::string という名前のクラスを定義します。 、交換など。このヘッダー ファイルには主に std::string クラスが含まれています。

次のコードは、<string> ヘッダー ファイルの string クラスを使用して文字列オブジェクトを作成し、size() 関数を使用して文字列の長さを取得します。

#include <iostream>  
#include <string>
using namespace std;

int main() {  
    string str = "Hello, world!";  
    int len = str.size();  
    cout << "字符串的长度为: " << len << endl;  
    return 0;  
}

<cstring>このヘッダー ファイルは、C 言語の <string.h> ヘッダー ファイルの C++ バージョンです。主に、C スタイルの文字列 (つまり、ヌル文字 '\0 で終わる文字配列) を操作するためのいくつかの関数とツールを提供します。 ')。たとえば、strcpy、strlen、strcat、strcmp およびその他の関数は、このヘッダー ファイルで宣言されます。

次のコードは、<cstring> ヘッダー ファイルの strcpy() 関数を使用して、ある文字列を別の文字列にコピーします。

#include <iostream>  
#include <cstring>
using namespace std;

int main() {  
    char str1[] = "Hello";  
    char str2[10];  
    strcpy(str2, str1);  
    cout << "复制的字符串是: " << str2 << endl;  
    return 0;  
}

どちらも文字列操作を提供しますが、その実装と使用法は異なります。実際の C++ プログラミングでは、より安全で使いやすい関数を提供するため、<string> ヘッダー ファイルで文字列クラスを使用することをお勧めします。ただし、C ライブラリとの互換性が必要な場合や、パフォーマンスを最適化する必要がある場合には、<cstring> の方が適切な場合があります。

おすすめ

転載: blog.csdn.net/cnds123/article/details/132787410