专栏首页随笔记录C编程之一:Linux下c语言的开发环境

C编程之一:Linux下c语言的开发环境

今天开始根据Linux C编程相关视频的学习所做的笔记,希望能一直坚持下去。。。

1、开发环境的构成

编辑器:VI;

编译器:选择GNU C/C++编译器gcc;

调试器:应用广泛的gdb;

函数库:glibc ;

系统头文件:glibc_header;

2、在安装Linux时需要注意事项

在安装时选上“程序开发”中的“开发工具”,就可以自动安装gcc/gdb;

若想开发图形界面,还需要选上GNOME/KDE软件开发。

3、IDE(集成开发环境:集编辑、编译、调试等功能于一身的工具)

Kylix:号称Linux下的dephi;

Kdevelop

RHIDE:类似与Turbo C++

4、编译器:gcc(GNU CCompiler)

是GNU推出的多平台编译器,以下是gcc支持编译的一些源文件的后缀及其解释

.c后缀 c语言源代码文件

.h后缀 是程序所包含的头文件

.o后缀 是编译后的目标文件

1

2

3

4

5

6

7

8

例:gcc -o hello hello.c

注:1、gcc编译我们的源程序;

2、-o选项要求编译器给我们输出的可执行文件名为hello;

3、hello.c是我们的源程序文件;

    4、执行./hello 就可以看到程序的输出结果

  查看gcc版本号:

1

gcc -version

5、函数库:glibc

glibc是提供系统条用和调用函数的C库,如open,malloc,printf等

查看glibc的版本:

1

ls /lib/libc-*

6、系统头文件:glibc_heade

缺少了系统头文件的话,很多用到系统功能的c程序将无法编译。

假如用户在安装过程中少装了这些包,就无法编译c源程序,这时候可以通过rpm包来迅速安装Linux的C开发语言环境的。

7、Linux下C程序开发过程:

(1)使用vi工具编辑写源程序;

(2)保存为*.c;

(3)使用gcc编译成二进制可执行文件;

(4)./a.out执行(当gcc没有用-o选项指定可执行文件名时);

(5)有问题可以使用gdb进行调试;

8、第一个程序:Hello.c

1

2

3

4

5

int main(int args,char **argv)

{

printf(“Hello Linux\n”);

return 0;

}

9、c程序组成

对于一个c程序,安装完成后可以分成三个部分:

可执行文件;包含文件;库文件

比如用rpm安装的MySQL数据库:

(1)可执行文件放在/usr/bin下;

(2)包含文件放在/usr/include/mysql下;

(3)库文件在/usr/lib/mysql下;

      VMware tools是虚拟机VMware Workstation自带的一款工具。它的作用就是使用户可以从物理主机直接往虚拟机里面拖文件。如果不安装它,我们是无法进行虚拟机和物理机之间的文件传输的。下面将介绍该怎么全安装。

————————————————

原文链接:https://blog.csdn.net/w4979/article/details/84718225

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux C编程之一:Linux下c语言的开发环境

    glibc是提供系统条用和调用函数的C库,如open,malloc,printf等

    w4979的博客
  • Linux C编程之一:Linux下c语言的开发环境

    3、hello.c是我们的源程序文件; 4、执行./hello 就可以看到程序的输出结果 查看gcc版本号: gcc -version 5、函数库:gli...

    w4979的博客
  • Berries DP CodeForces_1Berries348E Phoenix and

    所以问题就变成了n个树,每棵树可以选择用不用同树框。这其实就是一个01背包的变形。

    w4979的博客
  • Linux C编程之一:Linux下c语言的开发环境

    3、hello.c是我们的源程序文件; 4、执行./hello 就可以看到程序的输出结果 查看gcc版本号: gcc -version 5、函数库:gli...

    w4979的博客
  • Linux C编程之一:Linux下c语言的开发环境

    glibc是提供系统条用和调用函数的C库,如open,malloc,printf等

    w4979的博客
  • 原创 | 吐血推荐,B站最强学习资源汇总(数据科学,机器学习,python)

    经过这几个月的居家隔离,想必大多数同学都开始习惯通过线上的方式开展学习了,在线教育领域也因此迎来了一波爆发,竞争异常激烈,既有知名平台如MOOC、学堂在线、网易...

    数据派THU
  • Kafka简介、基本原理、执行流程与使用场景

    Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统。 它最初由LinkedIn公司...

    Java后端技术
  • 技术太多学不过来?教你如何越学越带劲

    一个人要想不断的提升,不断的改变,需要不断的学习,当然如果你想升职加薪,同样需要学习。然而当代知识层出不穷,学的过来吗?只要方法得当,相信可以通过学习达到我们的...

    用户1410343
  • Kafka简介、基本原理、执行流程与使用场景

    Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统。 它最初由LinkedIn公司...

    Java高级攻城狮
  • 如何设置宝塔面板优化 php 服务器性能

    为了提高 php 服务器性能,安装宝塔面板的服务器需要设置一下。整个设置过程很简单,魏艾斯博客把如何设置宝塔面板提高服务器性能的过程写下来,希望能帮到初次使用宝...

    魏艾斯博客www.vpsss.net

扫码关注云+社区

领取腾讯云代金券