行末スタイルが\r\ nであるはずの構成ファイルがあり、フォーマットをチェックして修正するためのコードをプログラムに含めたいと思います。既存のコード:
int convert_line_endings(FILE *fp)
{
char c = 0, lastc = 0, cnt = 0;
while((c = fgetc(fp)) != EOF)
{
if((c == '\n') && (lastc != '\r'))
{
cnt++;
//somehow "insert" a '\r' in here, after the previous char and before the '\n'
}
lastc = c;
}
return cnt;
}
また、Cプログラミングでは、charを「挿入」することはできません(またはできますか?!)。どちらか一方を上書きするだけです。助言がありますか?