String类型的数组长度

时间:2015-09-20 09:37:08

标签: c++ string

我有:

string a[] = {"akdhska","asjd","askjdh"};

有没有办法获得这个数组中的元素数量?

作为解决方案,我正在做以下事情:

vector<string> a;
a.insert(a.end(),"test1"); // or a.push_back("test1")
a.insert(a.end(),"test");
a.insert(a.end(),"test12");
a.insert(a.end(),"test123");
int len = a.size();

3 个答案:

答案 0 :(得分:6)

C ++ 11解决方案

std::size_t length = std::end(a) - std::begin(a);

std::size_t length = std::distance(std::begin(a), std::end(a));

答案 1 :(得分:1)

您可以使用:

int length = sizeof(a)/sizeof(*a);

答案 2 :(得分:1)

string a[] = {"akdhska", "asjd", "askjdh"};
int len = sizeof(a) / sizeof(*a); // gives you number of elements