cpp中是否有任何内置函数可以为我提供2d char数组的长度
对于ex,args的函数
const char* args[] = {"412", "..7", ".58", "7.8", "32.", "6..", "351", "3.9", "985", "...", ".46"}
应该返回11
答案 0 :(得分:7)
template <typename T, std::size_t N>
std::size_t size(T(&)[N]) { return N; }
使用sizeof
的方法的优点是你不能用指针意外地做到这一点。
答案 1 :(得分:4)
这将给出args
中的元素数量:
sizeof(args) / sizeof(args[0])
答案 2 :(得分:2)
在C ++ 11中,您可以使用:
std::end(args) - std::begin(args)
答案 3 :(得分:1)
sizeof(args) / sizeof(*args)