如何在C中创建字典?

Sam*_*Sam 7 c dictionary

我正在用C语言编写一个微控制器,并且它的一部分想在7段显示器上显示某些字母.每个字母都有一个相应的数字,使7段显示显示字母.它没有真正的模式,因为数字只是通过将7段显示上的位加起来显示字母所以如果我可以创建某种字典来实现这一点真的很好.

如果我正在使用C#或其他东西,我只需要制作一个字典,然后将字母作为键和数字添加为值,但据我所知,我不能在C中执行此操作.是否有其他方法可以执行此操作或执行此操作我应该只编写一个函数int displayletter(char letter)来使用一堆if语句来返回正确的数字吗?

Mat*_*len 6

你可以创建一个数组

 int values[26];
Run Code Online (Sandbox Code Playgroud)

并用每个字母的值填充它,但是它们是经过计算的

然后创建一个接受一个字符并返回一个int的函数

int GetValueFromChar(char c)
{
    return values[c - 'A'];
}
Run Code Online (Sandbox Code Playgroud)

这是简单的,因为它假设您只使用ASCII字符集中的大写字母,但您应该明白这一点.

  • 除非你是1975年的IBM,否则它不会是EBCDIC. (4认同)