ViまたはVimで編集されたCプログラムをどのようにコンパイルしますか?

ViまたはVimで編集されたCプログラムをどのようにコンパイルしますか?

vimとviでacプロジェクトをコンパイルして実行しようとしています。

#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。私は何が間違っていましたか?

以下を実行しようとしたときにもこの問題が発生しました。

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

ベストアンサー1

ただあなたが逃げた理由だけで

vi demo.c

demo.cファイルが作成されたという意味ではありません。バッファはディスクに最初に書き込むまで作成されません。

コンパイルする前に、バッファをディスクに書き込みます。

:w

あなたが見たメッセージはこれをチェックします[No write since last change]。このメッセージは、バッファが変更されたが(というバッファを作成したためdemo.c)、修正がディスクに書き込まれなかったことを意味します。

おすすめ記事