Как я могу скомпилировать программу C, которую я редактировал в Vi или Vim?

Я пытаюсь скомпилировать и запустить проект ac из vim и vi

#include<stdio.h> int main(void) { printf("Hello! This is a test prgoram.\n"); return 0; } 

и я получаю этот вывод

 madona@madona-Java ~ $ vi demo.c [No write since last change] make: *** No targets specified and no makefile found. Stop. Press ENTER or type command to continue [No write since last change] gcc: error: demo.c: No such file or directory gcc: fatal error: no input files compilation terminated. shell returned 4 

после использования этого :!gcc demo.c Что я делаю не так? В настоящее время я изучаю vi и vim и нуждаюсь в некоторой помощи.

У меня также была эта проблема, когда я пытался запустить:

 gcc -o demo demo.c gcc: error: demo.c: No such file or directory gcc: fatal error: no input files compilation terminated. 

  • Сделать vim открытыми файлами как номодифицируемые, при определенных условиях
  • Vim замерзает на короткое время
  • vim редактирование / переключение между несколькими файлами эффективно в больших структурах каталогов
  • Vim: скопируйте, затем вставьте несколько раз
  • Попытка получить vimpager (заменить меньше), работая с nerdTREE
  • собирать символ из строки 1 с символом из строки 2
  • Как копировать из одного экземпляра vim в другой с помощью регистров
  • VIM: показать все строки, отредактированные в сеансе
  • One Solution collect form web for “Как я могу скомпилировать программу C, которую я редактировал в Vi или Vim?”

    Просто потому, что вы побежали

     vi demo.c 

    не означает, что был создан файл demo.c Он не создается, пока вы не напишете буфер на диск в первый раз.

    Просто напишите буфер на диск перед компиляцией:

     :w 

    Это подтверждается сообщением [No write since last change] вы видите. Это сообщение означает, что буфер изменен (в том, что вы создали буфер, называемый demo.c ), но не был записан на диск после изменений.

    Linux и Unix - лучшая ОС в мире.