文章目录

  • 一、设置网络参数
    • 1.虚拟机网络适配器设置为NAT模式
    • 2.确定网卡ip
    • 3.设置NAT网络的端口映射
    • 4.进行网络测试
  • 二、用C语言编写一个简单的输出 hello word 的程序。
  • 三、编写一个主程序文件 main1.c 和一个子程序文件 sub1.c
    • 1.编写主程序文件main1.c
    • 2.编写子程序sub1.c文件
    • 3.在ubuntu系统用gcc 命令行方式编译主程序main.c 并运行
    • 4.在windows系统下用vc++编译主程序main1.c 并运行
  • 四、在ubuntu系统下用Makefile方式编程主程序。
    • 1.安装make并创建出makefile文件
    • 2.安装完成后用vim编辑器编写main与sub程序
    • 3.编写makefile文件:
    • 4.编译运行:

一、设置网络参数

首先设置网络参数确保系统能上网,这里使用NAT配置Ubuntu网络。

1.虚拟机网络适配器设置为NAT模式

首先关闭WMware中的Ubuntu,然后编辑虚拟机设置。然后选择网络适配器 -> NAT模式 ,然后确定。
​​​​

2.确定网卡ip

启动Ubuntu,打开终端,输入

ifconfig


我这里显示 ubuntu 的ip地址是 192.168.161.128

3.设置NAT网络的端口映射

在NAT网络下,开发板无法看到Ubuntu,如果开发板需要访问Ubuntu,需要进行端口映射。我们需要映射如下端口:

端口号 端口默认协议
22 ssh端口
111 rpc端口
2049 nfs端口
9999 mountd端口

这样开发板访问Windows的这些端口时,就可以访问到Ubuntu。

首先关闭Ubuntu,然后进行设置。
点击 编辑 -> 虚拟网络编辑器

然后点击更改设置
​​​​
​​

选择Vmnet8,点击NAT设置,进行端口映射的添加。然后点击添加,输入主机端口 22 ,虚拟机ip (就是刚才我们在ubuntu中查询的,我这里是192.168.161.128),选择TCP协议,虚拟机端口 22 ,然后点击确定。重复上一步骤,依次添加111,2049,9999 端口,确定并保存。

4.进行网络测试

输入

ping www.baidu.com

看到有数据返回,表示网络连通。

二、用C语言编写一个简单的输出 hello word 的程序。

使用vim编辑器
输入命令vim hello.c
进入vim编辑器,键入i,进入insert模式,编写代码

#include<stdio.h>
int main()
{cout<<"hello world!";return 0;
}

编辑完成后,esc键,:wq! 退出vim编辑
输入命令

gcc hello.c -o hello

此时会生成一个hello文件
输入./hello

三、编写一个主程序文件 main1.c 和一个子程序文件 sub1.c

子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。

1.编写主程序文件main1.c

使用vim编辑器创建一个main1.c的文件

vim main.c

输入i,进入程序的编写,代码如下:

#include<stdio.h>
#include"sub1.c"
int main()
{int a=3,b=5;float x=2x2(a,b);printf("%.3f",i);return 0;
}

2.编写子程序sub1.c文件

使用vim编辑器创建一个名为sub1.c的文件

vim sub1.c

然后输入i,开始编写程序,代码如下:

#include<stdio.h>
float x2x(int a,int b)
{float i;i=a+b;return i; //返回i的值
}

3.在ubuntu系统用gcc 命令行方式编译主程序main.c 并运行

gcc -o main1 main1.c
./mian1

4.在windows系统下用vc++编译主程序main1.c 并运行

在vc++上创建一个main1.c的文件
代码如下:

#include<stdio.h>
float x2x(int a, int b)
{float i;i = a + b;return i;
}
int main()
{int a = 5, b = 6;float i;i = x2x(a, b);printf("%f\n", i);
}

运行结果

四、在ubuntu系统下用Makefile方式编程主程序。

1.安装make并创建出makefile文件

sudo apt-get install make

2.安装完成后用vim编辑器编写main与sub程序

利用gcc生成main.o与sub.o文件,创建并运用vim编译完成makefile文件

gcc -c sub1.c -o sub1.o
gcc -c main.c -o main.o

3.编写makefile文件:

touch makefile
vim makefile

文件中输入代码如下

4.编译运行:

make
./main

结果如下:

【嵌入式1】Ubuntu系统下运行C语言程序以及用Makefile方式编程相关推荐

  1. 在Ubuntu系统下运行c语言程序

    第一周作业--嵌入式系统程序设计系统基础 作业要求 请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int ...

  2. Ubuntu系统下编译C语言程序

    文章目录 一.在Ubuntu下安装gcc 二.在ubuntu系统用gcc 命令行方式编译主程序并运行 三.在windows系统下用VC++编译主程序并运行 四.在ubuntu系统下用Makefile方 ...

  3. 在Linux系统中运行C语言程序

    正式学习c语言的第一天   2022/1/10 在之前的学习中已经在Windows系统中用Microsoft VC++上实现了C语言程序的运行,现在将在Linux系统上运行C语言程序. 首先明确C语言 ...

  4. c语言在linux下运行程序设计,如何在Linux下运行C语言程序

    如何在Linux下运行C语言程序 C语言是一个有结构化程序设计.具有变量作用域(variable scope)以及递归功能的过程式语言.以下是小编为大家搜索整理的如何在Linux下运行C语言程序,希望 ...

  5. deepin终端编译c程序_大神支招 如何在Linux下运行C语言程序

    刚入门学习C语言程序的小伙伴比较常遇到的其中一个问题是:如何在Linux下运行C语言程序.今天针对这个热门问题,小编为大家准备了详细的教程! 小编先给大家普及一些关于C语言程序的基本常识:首先大家要清 ...

  6. Ubuntu系统中编写c语言程序教程

    目录 1.准备工作 1.1 安装GCC及必要软件包 2.使用GCC编写C语言程序 2.1 编写一个整型运算反回浮点型的程序 2.2 在windows系统下使用编译工具编译该程序 3.使用Makefil ...

  7. ubuntu系统下运行可执行文件 (application/x-executable)

    ubuntu14.04 LTS下执行属性为executable (application/x-executable)的文件的方法: 1. chmod +x filename 2. ./filename ...

  8. 在Linux下运行C语言程序

    市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图).CentOS.Fedora. 我以Fedora 2 ...

  9. 怎么用centos7运行c语言程序_在Linux下运行C语言程序

    市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图).CentOS.Fedora. 我以Fedora 2 ...

最新文章

  1. python注入_python的常见命令注入威胁
  2. java facets_Java UIComponent.getFacets方法代码示例
  3. 王道计算机考研 数据结构 课后编程习题代码(绪论、线性表)
  4. 【Redis学习】Redis实现分布式锁
  5. 什么是高并发,如何避免高并发
  6. node 大写_大写Node.js模块
  7. seo超强外部链接、内部链接技巧
  8. 安徽工业大学计算机考研历年分数线,安徽工业大学历年考研分数线汇总[2012-2021]...
  9. Mysql disk write 高_优化系列|实例解析MySQL性能瓶颈排查定位 导读 排查过程
  10. JCreator Error : Invalid path
  11. 高等数学(第七版)同济大学 总习题六 个人解答
  12. ELASTIC-PHP + IK分词器 + THINKPHP6 初次使用 (关键词查询)
  13. Kubernetes证书类型和适用场景
  14. 还记得那年大明湖畔的Java 7吗
  15. Java 标准输入输出流(System.in,System.out)使用
  16. STM32cubemax的下载与配置
  17. 博云与智领云达成战略合作,携手共研云原生大数据领域
  18. 听劝!不要啥都不懂就学PMP!这100个考试关键点,带你直击考试现场
  19. C语言这么厉害,它自身又是用什么语言写的?
  20. 自动化工具之SelendroidRobotium

热门文章

  1. 三极管基极下拉电阻的作用
  2. android 点击按钮来回切换图片
  3. 前端国际化如何对中文——>英文自动化翻译小demo
  4. 基于Matlab闭环Buck降压斩波电路Simulink仿真电路模型搭建
  5. 彩色复古装饰麻绳-----四色麻绳
  6. 手把手教你做音乐播放器(五)音乐列表的存储(上)
  7. 服务器宕机原因有哪些?服务器宕机解决方案
  8. java sleep的意义_thread.sleep的作用是什么
  9. hdu 1824-Let's go home 2-SAT (模板)
  10. 现在有些女的一个月工资两三千,每个月消费差不多两三千,你认为这算经济独立吗?...