<分区>
我想为字符分配整数值。其中“C”的值最小,“B”的值最大。
还有比映射更好的东西吗?
例如:-'C'=100,'D'=101,'E'=102....'B'=126.有比映射更好的方法吗? 如果输入字符串是“BYE”,输出应该是351(因为'B'=126,'Y'=123,E='102')。
<分区>
我想为字符分配整数值。其中“C”的值最小,“B”的值最大。
还有比映射更好的东西吗?
例如:-'C'=100,'D'=101,'E'=102....'B'=126.有比映射更好的方法吗? 如果输入字符串是“BYE”,输出应该是351(因为'B'=126,'Y'=123,E='102')。
最佳答案
您可以使用指定的数组初始值设定项:
// UCHAR_MAX is from header <limits.h>
int const map[UCHAR_MAX] = {
['C'] = 100,
['D'] = 101,
['B'] = 126,
};
未分配的字符将具有零值。
然后您将通过表达式获得单个值:
int value = map[(unsigned char)character];
关于c - 如何将 Unique int 值分配给字符串或字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54328808/