C++ 字符串库 - 数据


描述

它返回一个指向数组的指针,该数组包含表示字符串对象当前值的以 null 结尾的字符序列(即 C 字符串)。

宣言

以下是 std::string::data 的声明。

const char* data() const;

C++11

const char* data() const noexcept;

C++14

const char* data() const noexcept;

参数

没有任何

返回值

它返回一个指向数组的指针,该数组包含表示字符串对象当前值的以 null 结尾的字符序列(即 C 字符串)。

例外情况

如果抛出异常,则字符串不会发生任何变化。

例子

在下面的 std::string::data 示例中。

#include <iostream>
#include <string>
#include <cstring>

int main () {
   int length;

   std::string str = "sairamkrishna mammahe";
   char* cstr = "sairamkrishna mammahe";

   if ( str.length() == std::strlen(cstr) ) {
      std::cout << "str and cstr have the same length.\n";

      if ( memcmp (cstr, str.data(), str.length() ) == 0 )
         std::cout << "str and cstr have the same content.\n";
   }
  return 0;
}

示例输出应该是这样的 -

str and cstr have the same length.
str and cstr have the same content.  
字符串.htm