日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

Ubuntu18.04编译c语言程序

發(fā)布時(shí)間:2024/3/12 Ubuntu 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu18.04编译c语言程序 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在Ubuntu18.04系統(tǒng)下編譯C程序的一般流程,vim文本編輯器的使用,makefile的使用等

  • 一、vim教程
    • 1. 功能
    • 2. 模式
    • 3. 基本操作
  • 二、在Ubuntu系統(tǒng)下使用gcc編譯c程序
    • 1、準(zhǔn)備工作
    • 2、代碼部分
    • 3、編譯過程
  • 三、在Ubuntu系統(tǒng)下使用makefile編譯c程序
    • 1、makefile格式要求
    • 2、編譯過程
  • 四、在win10系統(tǒng)使用visual stdio2019編譯c程序

一、vim教程

1. 功能

  • 命令行模式下的文本編輯器。
  • 根據(jù)文件擴(kuò)展名自動(dòng)判別編程語言。支持代碼縮進(jìn)、代碼高亮等功能。
  • 使用方式:vim filename
    如果已有該文件,則打開它。
    如果沒有該文件,則打開個(gè)一個(gè)新的文件,并命名為filename

2. 模式

  • 一般命令模式
    默認(rèn)模式。命令輸入方式:類似于打游戲放技能,按不同字符,即可進(jìn)行不同操作。可以復(fù)制、粘貼、刪除文本等。
  • 編輯模式
    在一般命令模式里按下i,會(huì)進(jìn)入編輯模式。
    按下ESC會(huì)退出編輯模式,返回到一般命令模式。
  • 命令行模式
    在一般命令模式里按下:、/、?三個(gè)字母中的任意一個(gè),會(huì)進(jìn)入命令行模式。命令行在最下面。
    可以查找、替換、保存、退出、配置編輯器等。

3. 基本操作

命令功能
i編輯模式
Esc一般命令模式
:w保存
:wq保存并推出
:q退出
:q!強(qiáng)制退出
dd刪除當(dāng)前行
:set nu設(shè)置行號(hào)
:set nonu隱藏行號(hào)
dG刪除全文
G光標(biāo)移到最后一行

二、在Ubuntu系統(tǒng)下使用gcc編譯c程序

1、準(zhǔn)備工作

1、在Vmware中輸入ifconfig,得到自己IP

2、在Xshell軟件,利用SSH連接虛擬機(jī),默認(rèn)端口號(hào)22

3、更換阿里源
輸入命令sudo vim /etc/apt/sources.list
按下Esc+dG刪除全文
復(fù)制阿里源,Shift+insert粘貼到vim
按下Esc+:wq保存退出
阿里源如下:

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

4、更新軟件及軟件包,安裝gcc和make
sudo apt-get update
sudo apt-get upgrade
安裝gcc和make
sudo apt-get install gcc
sudo apt-get install make
等待進(jìn)度條結(jié)束即可

2、代碼部分

題目要求:
編寫一個(gè)主程序文件 main1.c 和一個(gè)子程序文件 sub1.c, 要求:子程序sub1.c 包含一個(gè)算術(shù)運(yùn)算函數(shù) float x2x(int a,int b),此函數(shù)功能為對(duì)兩個(gè)輸入整型參數(shù)做某個(gè)運(yùn)算,將結(jié)果做浮點(diǎn)數(shù)返回;主程序main1.c,定義并賦值兩整型變量,然后調(diào)用函數(shù) x2x,將x2x的返回結(jié)果printf出來。
(1)在ubuntu系統(tǒng)用gcc 命令行方式編譯主程序main1.c 并運(yùn)行;
(2)在windows系統(tǒng)下用VS2019編譯器編譯主程序main1.c 并運(yùn)行。
在上述任務(wù)基礎(chǔ)上,在ubuntu系統(tǒng)下用Makefile方式編程主程序。


(1)main1.c

//main1.c文件內(nèi)容 #include <stdio.h> #include "sub1.h"int main() {int a = 16, b = 5;printf("%.2f", x2x(a, b));return 0; }

(2)sub1.c

//sub1.c #include "sub1.h" float x2x(int a, int b) {float c = (float) a / b;return c; }

(3)sub1.h

//sub1.h #ifndef _SUB1_H_ #define _SUB1_H_float x2x(int a, int b);#endif

3、編譯過程

將三個(gè)文件存入,使用命令gcc -o main1 main1.c sub1.c編譯完成
./main1運(yùn)行編譯結(jié)果

三、在Ubuntu系統(tǒng)下使用makefile編譯c程序

1、makefile格式要求

target : prerequisites [tab]command
  • target:也就是一個(gè)目標(biāo)文件,可以是Object File,也可以是執(zhí)行文件。
    還可以是一個(gè)標(biāo)簽(Label),注意不能重復(fù)
  • prerequisites: 要生成那個(gè)target所需要的文件或是目標(biāo)。
  • command: 就是make需要執(zhí)行的命令
  • 注意command之前需要Tab,而不能用空格替代

2、編譯過程

1、編輯makefile文件,vim makefile輸入以下內(nèi)容

main2: sub1.o main1.cgcc main1.c sub1.o -o main2sub1.o: sub1.cgcc -c sub1.c -o sub1.oclean:rm *.o

2、使用命令make編譯
3、./main2查看編譯效果,對(duì)比gcc編譯結(jié)果一致

四、在win10系統(tǒng)使用visual stdio2019編譯c程序


感謝fatyuchen老師的Linux課程指導(dǎo)
感謝優(yōu)秀學(xué)姐的博客https://blog.csdn.net/qq_46467126/article/details/120279485?spm=1001.2014.3001.5502
另一篇優(yōu)秀博客借鑒https://blog.csdn.net/txmnQAQ/article/details/120254434?spm=1001.2014.3001.5502

總結(jié)

以上是生活随笔為你收集整理的Ubuntu18.04编译c语言程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。