首页
登录 | 注册

怎样在linux下编写C程序并编译执行

一、Hello, world!

在linux下输入:(以hello.c为例)
首先选中文件要保存的路径(如:cd work)
vi hello.c(要编辑的文件名)

输入程序:
# include
int main(void)
{
  printf("hello,world!\n");
  return 0;   注:return和0之间要有空格
}

退出并保存程序:
在vi模式下,按ESC后,按    :wq加enter键

利用gcc编译程序:
(先要找到程序存在哪个文件夹中)
ls
cd work
gcc -Wall hello.c (或者是gcc hello.c -o hello)  注:在编译时最好加上-Wall选项,这样的话可以把隐藏的warning也显示出来,Wall首字母要大写。

输出程序结果:
./hello  (或者是 ./a.out)

执行完后可以得到:
hello, world!


二、引用数学函数时的编译指令

  当程序中用到了数学函数时,在vi中编译时应该在gcc后面加上-lm选项,这是因为数学函数都是保存与libm.so库文件中(通常在/lib目录下),选项-lm就是告诉程序该数学函数要到这个库中去找。如程序:
#include
#include
{
int a=0;
int b;
b= cos(a);
printf("the value is %d",b)
return 0;
}

在编译时应该输入 gcc -lm -Wall math.c

相关文章

  • 一.如何在linux环境下调试JAVA程序使用访问timesten: 1.配置jdk环境变量: 上传jdk-6u7-linux-i586.bin文件到/data0/目录下,执行如下命令: [root@ora11gr2 data0]#chmo ...
  •     最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 上的目录)例如:svn che ...
  • Subversion是一个自由,开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空,下面我们就一起来看看在Linux下yum apt-get安装subversion 1.8的方法吧. 一直想找一个源可以使用 yum 或 ...
  • 该博文主要介绍了Linux下:安装db2v9.7.安装db2补丁.创建实例.db2数据库实例参数调整.dbm参数配置优化以及db2全局变量的设置和db2数据库的基本日常操作等相关内容! 一.Linux下安装db2 V9.7 1.解压缩gz包 ...
  • 基于net-snmp进行snmp的增量开发,新加了mib库以及所依赖的第三方接口库 将snmpd启动命令添加到linux系统启动流程中 在snmpd进程拉起过程中 init_mib_modules 新增了一些初始化行为,依赖的第三方外部资源 ...
  • Linux下Redis的安装和部署
    Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string.list.set.zset和hash.这 ...

2020 unjeep.com webmaster#unjeep.com
12 q. 0.014 s.
京ICP备10005923号