在我的换行序列中添加 '\r' 的最佳方法是什么?我正在将字符串写入文件并对其进行各种解析,但根据我的分配规范,新行将被视为'\r\n'。
现在我最后只有一个新行。我正在考虑一个 for 循环和/或使用 memmove 但不确定如何使其工作?
for (int x = 0;x < strlen(string);x++)
{
if (string[x] == '\n')
{
..............
}
}
该算法类似于以下内容:
strlen(string) + 2
字节以保存新字符串,否则分配strlen(string) + 3
字节。bytes to copy
好像strlen(string) - 1
设置了标志,否则strlen(string)
。bytes to copy
将from的数量复制string
到分配的存储。编辑:如果您可以对string
. 如果它驻留在足够大的缓冲区中以将字符添加到它的末尾,则不需要新的分配。如果您的char
类型不是一个字节,则需要进行相应调整。