我试图将字符数组转换为整数字符串,并将相应的字符转换为字母顺序。 例如:A(A)= 0,Z(Z)= 25在C++中将字符数组转换为整数字符串
string key_char = argv[1];
string key_num;
for (int i = 0; i < key_char.length(); i++){
if (isalpha(key_char[i])){
if (islower(key_char[i])){
key_num[i] = int(key_char[i] - 97); //97 is the ascii value for 'a'
}
else{
key_num[i] = int(key_char[i] - 65); // 65 is the ascii value for 'A'
}
cout << key_num << endl;
}
我的想法是,以创建两个字符串,key_char是用于存储从在字符的用户的命令行输入。 key_num是在翻译后存储整数字符串。我正在考虑迭代循环,并通过转换将每个字符从字符数组转换为整数字符串。我没有收到任何编译错误,也没有返回任何内容。请让我知道铸造的想法在这种情况下是否可行,或者是否有更好的解决方案。非常感谢你!
你想要一个'int'或'char's序列吗? –
您需要一个单独的索引变量来写入key_num,例如key_num [j ++],否则你将在key_num中有空的空间,其中isalpha(key_char [i])是假的 – samgak
嗨,我想要一个int序列。例如,如果用户输入“abz”,我希望我的输出字符串为“0125” –