开始在linux下做c语言开发
开始在linux下做c语言开发
本篇文章旨在介绍如何开始在linux下面进行C语言程序设计,以及如何使用程序设计及调试工具进行编写C程序。学会使用gcc及gdb等工具进行linux下的c编写和调试。
在开始之前,首先要说明的是,linux开发程序最主要的编辑器是vi/vim编辑器,当然还有emacs,gedit,只是vi/vim的用户实在是压倒性的多数,原因就是,它在编辑效率上的战胜了其他对手。vim是vi的升级版,带有关键字高亮显示及语法检查功能,现在很多的linux发行版都内置了它。
gcc是一个非常强大的编译工具,几乎可以编译linux下所有的c语言分支,当然主指还是在ANSI C上,虽然还有其他的编译器也可以在linux平台来编译C/C++,如intel的C compiler,不过,gcc的好处在于它集成于linux中,能够更加高效和方便的编译C/c++程序。
首先,让我们以一个程序设计界最经典的例子开始,就是HELL_WORLD程序,来推开linux C 语言设计的大门。
编写源程序:使用vim来创建一个C语言源程序:
[bruce@server1 ~]$ vim hello_world.c
/*This is my first C program*/
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
在vim编辑器中,按esc再打入:wq保存退出即完成源程序的编写了。
编译源程序一:下面开始编译,使用的是gcc工具
[bruce@server1 ~]$ gcc hello_world.c
[bruce@server1 ~]$
编译完成后,没有给我们任何的回显信息,证明没有出现编译问题。
然后我们就来检查一下,编译之后有何变化,在当前目录下使用ls查看目录内容,我们可以看到多了一个a.out出来,其实它就是编译后产生的可执行文件,默认名就为a.out
[bruce@server1 ~]$ ls
a.out hello_world.c rpmbuild RPM-GPG-KEY-CentOS-3
Desktop programs rpmbuild.txt
[bruce@server1 ~]$
执行程序:然后我们可以像执行shell脚本一样的方式来执行它:
[bruce@server1 ~]$ ./a.out
Hello World!
[bruce@server1 ~]$
从上面我们可以看出,结果已经正常输出了。
再谈编译:像上面那样,虽然可以正常的编写编译程序,但问题也来了,如果当前目录下有多个源程序,那每次编译后都产生的a.out会被后一个a.out所重写,就达到我们的要求了,所以我们可以使用一些参数来指
相关文档:
/*
* linux/fs/fcntl.c
*
* (C) 1991 Linus Torvalds
*/
#include <string.h>
#include <errno.h>
#include <linux/sched.h>
#include <linux/kernel.h>
#include <asm/segment.h>
#include <fcntl.h>
#include <sys/stat. ......
V] 零起点学习Linux系列培训视频 -1 (寒冰作品)
http://www.boobooke.com/v/bbk1301
[V] 零起点学习Linux系列培训视频 -2 (寒冰作品)
http://www.boobooke.com/v/bbk1304
[V] 零起点学习Linux系列培训视频 -3 (寒冰作品)
http://www.boobooke.com/v/bbk1305
[V] 零起点学习Linux系列培训视频 -4 (寒冰作品)
......
SLES 11
设置mysql服务自动启动状态
chkconfig mysql on
(chkconfig mysql off)
添加/删除mysql服务
/sbin/chkconfig --del mysql
/sbin/chkconfig --add mysql
查看mysql版本
mysql -V
mysqld -V
启停 mysql
service mysql start
service mysql stop
service mysql restart
......
C1X是C语言即C99标准之后将要推出的最新标准,了解到得原文如下:
C1X is the unofficial name of the planned new standard for the C programming language. It is intended to replace the existing C standard. This predecessor is informally known as C99. The standard is not yet fin ......
嵌入式linux基础知识大纲
其实这段时间非常的忙,忙到连做饭吃的时间都没有了。但是今天我特意抽空,来给关注我的朋友们一点点交代。(因为今天发现关注的人还蛮多的,有点受宠若惊啊!哈哈....)如题我暂时只能给大家一些大纲,很详细的学习过程要等大概半个月的时间,我有了空闲时间才能 ......