gpt4 book ai didi

c - 将整数值作为字节值保存在 ansi c 的 char 中

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:55:05 27 4
gpt4 key购买 nike

我想将 ppm 文件保存为 P6。这仅意味着字节。另外我想以并行方式保存它,所以这就是我使用 mmap 映射内存的原因。

这是我试图保存所有内容的代码的一部分:

        char* map;
//...
int offset = sprintf(map,"P6\n%d %d\n%d\n",x,y,k);
int counter = offset;

for(i = 0; i < x; i++)
{
for(j = 0; j < y; j++)
{
map[counter] = outputRed[i][j];
map[counter+1] = outputGreen[i][j];
map[counter+2] = outputBlue[i][j];
counter++;
}
}

问题是我无法将这些值从红色、绿色和蓝色数组(均为 int)保存到 map 值中。

之前我只是将 fputcfopen(FILE,"wb") 一起使用,一切都很好,但现在我不能这样做了。

谁能告诉我该怎么做?

最佳答案

您必须为每个像素将计数器递增 3:

map[counter] = outputRed[i][j];
map[counter+1] = outputGreen[i][j];
map[counter+2] = outputBlue[i][j];
counter += 3;

关于c - 将整数值作为字节值保存在 ansi c 的 char 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21030811/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com