如何用的更好的方法求字符串数组组数函数?(语言-c++)

#include<iostream>
#include<string>
using namespace std;
int length(string (str)[]){
    int i=0;
    for(;;i++){
        if (str[i]=="") break;
    }
    return i-1;
}
int main()
{
    string a[]={"111","222","333"};
    cout<<length(a)<<endl;
    return 0;
}


我经过几次尝试,用了这个方法,做了一个求字符串数组个数函数。但是有一行中return i-1是我猜出来的,请问一下这个是什么原因?还有没有更快的方法求出这个数组的长度?望请不吝赐教。

你有试过a数组中字符串长度不是3的情况吗。你这是碰运气的结果。
这跟整型数组一样,你在函数里是判断不出来数组长度的

#include<bits/stdc++.h>
using namespace std;
int main() {
    string a[10];
    int i,n;
    cin>>n;
    for(i=0;i<n;i++) {
        cin>>a[i];
        cout<<a[i].size()<<endl;
    }
    return 0;
}

我写的这个自己输入个数,输入字符串,其中 串名.size() 是测长度的函数
望采纳(◕ᴗ◕✿)

首先,
for 循环的第二个参数,j==0 什么鬼?只判断一次?
其次,
字符串数组与其他不同,你无法求出长度,因为你不知道什么时候结束