可以char str[];但是这只是指针,不是数组
因为C++不允许这样初始化数组
但是你可以这样
int n;
char *str;
cin>>n;
str=new((char)n);
cin.getline(str);
然后再输入想要的字符串
(其中n是你要输入字符数+1,因为最后一位是'\n')
C++不允许象JAVA那样定义不定数组char str[];
但是对于字符串,你可以申明一个字符串指针,然后指向一个字符串常量.所以,你可以这样写:
char *p;
p = "abcde";
用指针进行动态分配
char *str;
str = new char[n]; //分配
...
delete []str; //回收