用c语言加载位图字体

用c语言加载位图字体,c,data-structures,C,Data Structures,我正在处理一些位图字体。 这里的想法是给我2个文件 input.txt和font.txt。 我必须从input.txt文件中读取一个字符串,并使用font.txt对其进行转换,然后将相应的输出打印到另一个文件output.txt。 font.txt中的每个字符都由16x8的网格表示。e、 g: "A"= 0x00, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6,

我正在处理一些位图字体。
这里的想法是给我2个文件
input.txt和font.txt。 我必须从input.txt文件中读取一个字符串,并使用font.txt对其进行转换,然后将相应的输出打印到另一个文件output.txt。 font.txt中的每个字符都由16x8的网格表示。e、 g:

"A"=  
0x00,  
0x00,  
0x10,  
0x38,  
0x6c,  
0xc6,  
0xc6,  
0xfe,  
0xc6,  
0xc6,  
0xc6,  
0xc6,  
0x00,  
0x00,  
0x00
0x00
有人能告诉我如何将存储在文件中的上述格式加载到数据结构中。

看看如何在c中逐行读取

我假设您使用ASCII,并且数组大小是恒定的。您只需在每行的开头检查
,在这种情况下,您可以假定它是您的字母的标识符,否则您可以将值逐行读取到16x8数组中,如果有,则在末尾删除

检查
可以通过直接比较来完成,因为它是ascii字符

if (myline[0] == 34) {...};
获取信件的方法也可以相同:

char myletter = myline[1];
您还可以使用
scanf
解析格式化的行。另外,如果你有可能在C++中工作,它会使你的生活变得更容易,因为你将有机会访问更高级的方法。

查看看看如何在C.

中逐行阅读。 我假设您使用ASCII,并且数组大小是恒定的。您只需在每行的开头检查
,在这种情况下,您可以假定它是您的字母的标识符,否则您可以将值逐行读取到16x8数组中,如果有,则在末尾删除

检查
可以通过直接比较来完成,因为它是ascii字符

if (myline[0] == 34) {...};
获取信件的方法也可以相同:

char myletter = myline[1];
您还可以使用
scanf
解析格式化的行。另外,如果你必须在C++中工作,它会使你的生活变得简单很多,因为你可以访问更高级的方法。