c - 在C中的两个字符之间写入

标签 c

我有一个非常大的文本文件,我正在编写代码尝试查找所有 '' (连续的两个单引号),然后在这两个单引号之间写入一个数字。我可以用 C 语言做这个吗?我正在使用指针来查找 '' 。谢谢。

letter1 = fgetc(fptr);
if(letter1=="'"){
  fseek(fptr, 1, SEEK_CUR); 
  letter2=fgetc(fptr);
  if(letter=="'"){

  }
}
else{
  fseek(fptr, 1, SEEK_CUR);
}

最佳答案

大多数程序(我遇到过)都会写出一个新文件并用它替换旧文件。 您可以就地执行此操作,但必须将字节移动到要插入的位置之后以防止覆盖。 如果您使用的是 POSIX 系统,mmapmremap 函数可能会帮助您将其转换为 memmove 操作。

关于c - 在C中的两个字符之间写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34093946/

相关文章:

c - 通过fifo向服务器发送确认消息来区分客户端,客户端不会收到后续消息

c - 反转中缀表达式中的运算符优先级

c - 无法通过函数打印矩阵元素

c - 如何使用 zend 引擎 API 对 (int) 之类的值进行类型转换?

c - 使用 bsdiff 作为源文件和目标文件相同的文件。适用于此的其他差异算法?

c++ - 可移植显式预取

c - C中函数内部的静态变量

c - 如何在控制台中运行c项目

c - printf() 填充 C 中的列

c - 如何更新矢量化汇编(AVX)中的数组?