#include <iostream>
#include <cstring>
using namespace std;
int main(int argc, char *argv[])
{
char cc[] = "";
cc[0] = 'a';
cc[1] = 'b';
cc[2] = '\0';
cout << strlen(cc) << endl;
return 0;
}
看大家都说是越界的问题,我试过了不是的,因为下面这种情况越界也是可以strlen()的
#include <iostream>
#include <cstring>
using namespace std;
int main(int argc, char *argv[])
{
char cc[] = "a";
cc[1] = 'a';
cc[2] = 'a';
cc[3] = '\0';
cout << strlen(cc) << endl;
return 0;
}