在Ubuntu上利用vim進行程式編寫及執行
目錄:
1、編寫一個主程式檔案main1.c和一個子程式檔案sub1.c並執行
(1)、編寫一個main1.c
首先利用vim建立一個名為main1.c的新檔案
vim main.c
然後輸入i,開始編寫程式;在編寫好程式之後按esc後再輸入:wq退出編寫並儲存檔案,程式碼如下:
#include<stdio.h>
#include"sub1.c"
main()
{
int a=2,b=2;
float i;
i=x2x(a,b); //呼叫所引用的sub1.c的檔案的函式x2x,並將返回值賦給i
printf("%f\n",i);
}
(2)、編寫一個sub1.c
利用vim在建立一個名為sub1.c的檔案
vim sub1.c
然後輸入i,開始編寫程式;在編寫好程式之後按esc後再輸入:wq退出編寫並儲存檔案,程式碼如下:
#include<stdio.h>
float x2x(int a,int b)
{
float i;
i=a+b;
return i; //返回i的值
}
(3)、執行程式
在編寫好程式後,在終端中如下指令將main1.c檔案變成可執行檔案,然後輸入./main1執行程式,指令及執行結果如下圖:
gcc -o main1 main1.c
./mian1
2、利用vc++編譯並執行主程式main1.c
(1)、在windows的vc++上編寫函式main1.c
x先建立一個新的工程檔案命名為1,然後再建立一個新的.c檔案加入新創的工程檔案中,然後輸入程式碼如下,若編譯沒有錯誤即可執行:
#include<stdio.h>
float x2x(int a,int b)
{
float i;
i=a+b;
return i;
}
main()
{
int a=2,b=2;
float i;
i=x2x(a,b);
printf("%f\n",i);
}
(2)、執行函式main1.c
點選執行,得到如下結果:
3、用makefile的方式編寫主程式
(1)、編寫一個sub1.h標頭檔案
先編寫一個sub1.h標頭檔案因為再sub1.c以及main1.c中都需要呼叫該頭函式,然後用makefile的方式實現程式,程式碼以及命令如下:
makefile指令碼:
main1: main1.c sub1.o
gcc main.c sub1.o -o main1
sub1.o: sub1.c
gcc -c sub1.c
sub1.h:
float(int a,int b);
sub1.c
#include"sub1.h"
float x2x(int a,int b)
{
float i;
i=a+b;
return i;
}
main.c:
#include<stdio.h>
#include"sub1.h"
main()
{
int a=2,b=2;
float i;
i=x2x(a,b);
printf("%f\n",i);
}
(2)、執行結果
在終端輸入make執行命令,先將sub1.c變成sub1.o,然後將main1.c及sub1.o兩個檔案變成一個可執行檔案main1;結果如下圖:
相關文章
- 如何編寫及執行JSJS
- Ubuntu上使用QT creator執行cuda程式UbuntuQT
- 在Ubuntu環境下用gcc命令執行c程式以及Makefile編譯UbuntuGCC程式編譯
- 在VSCode上執行Python程式(Mac)VSCodePythonMac
- golang編寫程式時,shell在子目錄批量執行go mod tidyGolang
- 在 Ubuntu 上安裝 .NET SDK 或 .NET 執行時Ubuntu
- 編寫執行緒安全的JSP應用程式執行緒JS
- RCE(遠端程式碼執行漏洞)原理及漏洞利用
- JavaScript 編寫和執行方法JavaScript
- 在 WASI 上執行 .NET 7 應用程式
- vim設定一鍵執行python程式碼Python
- 利用Kettle進行資料同步(上)
- 在NuoDB上執行AsteriskAST
- 利用SSIS在SQL Azure中執行計劃任務(上)DJSQL
- liunx進行 idea java 執行時反彙編IdeaJava
- wine-在mac上執行exe執行檔案Mac
- 程式執行緒篇——執行緒切換(上)執行緒
- 利用AI進行高精度影像編輯︰EditGANAI
- Linux C++ 開發2 - 編寫、編譯、執行第一個程式LinuxC++編譯
- Windows+VSCode編譯在Linux-x86_64環境上執行的程式WindowsVSCode編譯Linux
- 利用 Python 特性在 Jinja2 模板中執行任意程式碼Python
- 轉:在Linux上執行WinFormLinuxORM
- 在Linux行內直接進行大小寫轉換Linux
- Linux下編譯生成SO並進行呼叫執行Linux編譯
- 利用源生成器,在編譯階段生成對映程式碼,減少執行時反射編譯反射
- 在Kotlin中如何利用協程進行非同步程式設計Kotlin非同步程式設計
- Spark程式碼在叢集上執行過程理解Spark
- 在IDEA上執行成功,打包成jar包後,執行報錯,程式自動退出IdeaJAR
- python如何換行編寫程式碼Python
- Python 多執行緒及程式Python執行緒
- 關於在ubuntu中用vscode編譯除錯C\C++,Proteus模擬執行stm32程式UbuntuVSCode編譯除錯C++
- 在 Ubuntu 22 的基礎上進行 Hadoop 偽分散式(HDFS)的搭建UbuntuHadoop分散式
- 在 WSL Ubuntu 上使用 .NET 進行跨平臺開發新手入門Ubuntu
- [20220314]利用vim下使用gdb進行各種進位制轉換外掛.txt
- 瞭解JDK、JRE、JVM及Java程式的編譯與執行JDKJVMJava編譯
- 用vim編寫markdown
- C程式從編譯到執行C程式編譯
- Hazelcast JET在Spring Boot上執行ASTSpring Boot