所以这是我必须/必须做的。我有一个包含 132x72 大图片的 .txt 文件。我需要做的是将其放入十六进制值的 c 数组中。
我需要找到一种方法来获取前 8 行的第一个字符并将它们水平放在一起,这样我就可以将它们转换为十六进制。然后我需要重复 9 次。
例子:
00000
00000
11111
01010
10101
10101
01010
10101
我需要变成:
00101101
00110010
00101101
00110010
00101101
最好/最简单的方法是什么?老实说,我不知道从哪里开始。
最佳答案
假设 .txt 文件中的 1 和 0 是字符(如果它是二进制的,那么您需要先转换它们):只需将文件逐行读取到数组中。然后,您可以大步打印数组,i。 e.首先打印字符 0, 8, 16, 24 ... 然后是 1, 9, 17, ... 等等:
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("%c", chars[i + j * ROWS]);
}
printf("\n");
}
类似的东西。
关于C++:解析一个 132x65 的二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10233487/