VMware虚拟机中ubuntu系统编写C语言程序

在VMware虚拟机ubuntu系统中使用gcc和makefile来编写c程序,并在Windows系统下的编译软件中也进行程序运行,通过对比二者的不同来加深对Linux系统的理解。

1.Hello,world程序编写及运行


程序

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

运行


2.gcc中main1和sub1程序编写及运行


程序

#include"sub1.h"

int main()
{
	int x=2,y=9; 
	printf("%.2f\n",x2x(x,y)); 
	return 0;
}
#ifndef __sub1_h
#define __sub1_h

#include<stdio.h>

float x2x(int a,int b); 

#endif
#include "sub1.h"

/*******************/
/*             参数:a,b	   */
/*      返回值:ans    */
/*******************/
float x2x(int a,int b)
{
	float ans;
	ans=(float)b/a;
	return ans;}

运行



步骤:

命令1:gcc-c sub1.c(转换sub1.c程序成为sub1.o)

命令2:gcc main1.c sub1.o -o main1(转换main1.c程序成为main1.o,链接sub1.o生成main1可执行文件)

命令3:./main1(执行main1程序)



3.Windows系统下使用编译软件程序编写及运行


使用软件:Dev-c++

程序

#include <stdio.h>

// 子程序sub,包含x2x函数
float x2x(int y, int x)
{
    return (float) y / x;
}

// 主程序main
int main()
{
    int x = 42;
    int y = 730;

    // 调用子程序sub中的x2x函数并输出结果
    printf("运算结果为: %.2f\n", x2x(y, x));

    return 0;
}

运行


4.makefile中main1和sub1程序编写及运行


程序

main1:sub1.o main1.c
        gcc main1.c sub1.o -o main1

sub1.o:sub1.c
        gcc -c sub1.c -o sub1.o

clean:
        rm *.o 

运行


步骤:
命令1:cd makefile文件所在文件夹名字(定位文件夹位置,否则可能出现找不到文件执行命令)
命令2:make(编译得到main1的可执行文件)
命令3:make clean(删除*.o文件)


5.实验总结



在本次实验中,我分别在Linux系统和Windows系统中撰写并运行了相同功能的C语言程序。

代码运行的关键是将源程序转化为可执行文件的过程。在Linux系统中使用GCC编译器命令将源代码编译为目标文件,然后链接为可执行文件的过程中,包括了预处理、编译和链接等步骤。

在Windows系统中,Dev-C++软件提供了一个简洁的编译和运行环境。直接打开源代码文件并运行即可将源程序编译为可执行文件并执行,相对于Linux系统来说操作更快速方便。

通过在Linux和Windows系统中编写和运行相同功能的C程序,我对代码运行的过程有了更清晰的认识。这个实验提升了我对代码的运行过程和源程序转化为可执行文件的过程的理解。





 

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值