假设我有一个数组:
string w[10];
我有一个声明:
if(w.size() > 10)
{
// How would I print out the 11th character?
char a = w[11];
cout << a << endl;
}
我如何打印出第11个字符?我试着存放到一个角色a但它似乎没有打印任何东西。
答案 0 :(得分:1)
为什么要在数组边界外打印?打印超出数组大小的任何字符都是未定义的,可能会导致崩溃。
另外w [11]实际上是第12个元素。由于数组是基于0的第11个元素是w [10]。
你真的希望数组的动态大小吗?因为如果您尝试使用字符串,或许您想要一个stl字符串?这在标题<string>
中定义,并通过
std::string somestring("string you want");