我想把','和' \ n'在一个文件中。所有值都是0,除了4,9,14,19,23 ...我要放的是','和' \ n'
但输出结束了:
0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,
我期待的是:
0000,0000
0000,0000
0000,0000
0000,0000
0000,0000
等等
这是我编写的示例代码。 这有什么不对?
for(int i=0; i<100; i++)
{
finalascii[i ]='0';
}
int g=0;
for(int i=0; i<100; i++)
{
finalascii[i+4 + g]=',';
finalascii[i+9+g]='\n';
g=g+4;
}
fwrite(finalascii, 100, 1, fpw);
答案 0 :(得分:2)
展开你的循环(即填写i
和g
的值),我们发现你的循环进行了以下分配:
i[ 4] = ',';
i[ 9] = '\n';
i[ 9] = ',';
i[14] = '\n';
i[14] = ',';
i[19] = '\n';
i[19] = ',';
i[24] = '\n';
等等。结果是您构建了字符串0000,0000,0000,0000...
。没有'\n'
,因为您会立即用逗号覆盖每个'\n'
。
此外,你的循环最终得到:
i[499] = ','
i[504] = '\n'
但您首先只使用100
初始化了0
个地方,因此这表明您没有正确实施您想要做的任何事情。
答案 1 :(得分:0)
假设你写了三个字段,如下:
0000 0000 0000
...然后由于某种原因你决定要更改分隔符。你可以在第一个分隔符处写一个逗号,然后在第二个分隔符处写一个换行符......然后你迭代到第二个迭代器并用另一个逗号替换它。
你知道这张照片有什么问题吗?你用逗号覆盖了你想写的'\n'
。也许你打算写g = g + 9;
?