-6

假设我有一个数组:

string w[10];

我有一个声明:

if(w.size() > 10)
{
  // How would I print out the 11th character?
  char a = w[11];
  cout << a << endl;
}

我将如何打印出第 11 个字符?我尝试存储到一个字符中,但它似乎没有打印任何东西。

4

1 回答 1

1

为什么要在数组边界之外打印?打印超出数组大小的任何字符都是未定义的,可能会导致崩溃。

w[11] 实际上也是第 12 个元素。由于数组是基于 0 的,第 11 个元素是 w[10]。

你真的希望数组是动态大小的吗?因为如果您尝试使用字符串,也许您想要一个 stl 字符串?这在标题中定义<string>并通过

std::string somestring("string you want");
于 2012-10-21T08:12:23.140 回答