c++ 指针数组的赋值

2024-12-27 18:28:28
推荐回答(3个)
回答1:

把你的完整的代码发上来
就这一小段看不出什么东西出来

你的问题主要是:
1、你还没有给指针分配空间,当然不能赋值了
2、数组不能整个一起赋值,必须一个一个来
3、key数组如果在声明的时候没有赋初值,就必须声明其大小

更正如下:

std::string key[15];//有序的关键字数组

while ((c = getchar()) !='#')
{
switch(c) {
case '1':
{
key[0] = "发布日期";
key[1] = "工作地点";
key[2] = "招聘人数";
key[3] = "工作年限";
key[4] = "外语要求";
key[5] = "薪水范围";
key[6] = "学 历";
break;
}

case '2':
{
key[0] = "工作性质";
key[1] = "工作地点";
key[2] = "发布日期";
key[3] = "截止日期";
key[4] = "招聘人数";
key[5] = "薪水";
key[6] = "工作经验";
key[7] = "学历";
key[8] = "简历语言要求";
key[9] = "语言能力";
break;
}

另外需要包含头文件#include

回答2:

用getchar()应该刷新缓冲区,用cout<也可以定义一个变量如:
char ch;
cin>>ch;
switch(ch)
{
..............
}

回答3:

用case (char)1: