C++如何编个函数 f(数字)=字符串(字符串的长度不等)

来源:百度知道 编辑:UC知道 时间:2024/05/06 06:43:49
然后用cout<<f(1);就可以查看1对应的字符串
这个函数要包含好多好多化学离子(字符串)
都是手动一个一个定义的 大家不要写一些超麻烦的……

比如
cout<<f(1); 输出的是acetate
f(2) 输出aluminum
f(3) 输出ammonium
……
等等 这些输出的东西都是由我手动一个一个定义的(因为不可能有简便方法 只能一个一个定义)
但是我要知道怎么写个这样的函数

=============
以下是我写的一段 但是由于字符串长度不齐无法编译
你可以帮我修改这段
如果嫌麻烦删了重写一段也行
char nam(int num)
{
char ss[99];
switch(num)
{
case 1:
ss=char[99]("acetate");
break;
case 2:
ss="aluminum";
break;
case 3:
ss="ammonium";
break;
case 4:
ss="barium";
break;
}
return ss;
}

请举一些实例,看不清楚你的意思!

哦,用字符串数组不可以了吗?如下:

//---------------------------------------------------------------------------
#include <iostream>
#include <string>

using namespace std;

string f(int i)
{
string a[]={"acetate","aluminum","ammonium"}; //还可以添加所需字符串,只需按规定格式写在大括号内就可以了
return a[i-1];
}
int main(void)
{
string a;
a=f(2);
cout<<a;
return 0;
}
//---------------------------------------------------------------------------

确实,用string数组就可以了。
#include "iostream"
#include "string"
using namespace std;
string f(int i)
{
string str[]={"acetate","aluminum","ammonium"};
return str[i];
}
void main()
{
cout<<f(1);
}