用system函数调用bash指令会显著降低C的效率吗?

Hello!.
我在程序里写了很多类似
system("echo 123 >> 1.txt");
这种,来代替本来打开文件进行读写的代码.
我开始担心这会不会降低程序的效率?相比起直接用C的API进行文件读写.

阅读 955
2 个回答
✓ 已被采纳

一个程序执行main入口函数之前,还会执行很多初始化过程,你可以查询操作系统原理里调用一个进程的说明。system('echo 111>>1.txt');就相当于执行一个echo程序,自然比你自己写的成千上万行代码都要慢。

#include <stdio.h>

int main() {
    FILE *fp = fopen("1.txt", "a");
    if (fp != NULL) {
        fprintf(fp, "123\n");
        fclose(fp);
    } else {
        perror("File opening failed");
    }
    return 0;
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题