c++数组初始化的问题!!

2025-04-26 21:38:06
推荐回答(3个)
回答1:

可以char str[];但是这只是指针,不是数组

因为C++不允许这样初始化数组

但是你可以这样
int n;
char *str;
cin>>n;
str=new((char)n);
cin.getline(str);
然后再输入想要的字符串
(其中n是你要输入字符数+1,因为最后一位是'\n')

回答2:

C++不允许象JAVA那样定义不定数组char str[];
但是对于字符串,你可以申明一个字符串指针,然后指向一个字符串常量.所以,你可以这样写:

char *p;
p = "abcde";

回答3:

用指针进行动态分配
char *str;
str = new char[n]; //分配
...
delete []str; //回收