linux下的c语言编程

author author     2023-03-12     191

关键词:

一、工具的使用
1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。
2、学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。
3、掌握gcc和gdb的基本用法。掌握gcc的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用gcc把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。
4、掌握svn/cvs的基本用法。这是linux,也是开源社区最常用的版本管理系统。可以去试着参加sourceforge上的一些开源项目。
二、linux/unix系统调用与标准C库
系统调用应用软件与操作系统的接口,其重要性自然不用说,一定要掌握。推荐学习资料为steven先生的UNIX环境高级编程(简称APUE)。
三、库的学习
无论是在哪个平台做软件开发,对于库的学习都很重要,linux下的开发库很多,我主要介绍一下我常常用到的一些库。
1、glib库
glib 库是gtk+和gnome的基础库,并具是跨平台的,在linux、unix和windows下都可以用。glib库对于linux平台开发的影响就像 MFC对windows平台开发的影响一样,很多开源项目都大量的使用了glib库,包括gimp、gnome、gaim、evolution和 linux下的集群软件heartbeat.因为glib库自带有基本的数据结构实现,所以在学习glib库的时候可以顺便学习一下基本的数据结构(包括链表、树、队列和hash表)。
2、libxml库
libxml是linux平台下解析XML文件的一个基础库,现在很多实用软件都用XML格式的配置文件,所以也有必要学习一下。
3、readline库
readline 库是bash shell用的库,如果要开发命令行程序,那么使用readline库可以减少很多工作量,比如bash里的命令行自动补全,在readline里就已经有实现,当然你也可以用自己的实现替代库的行为。readline库有很多网站介绍的,只要google一下readline就可以找到一堆了。
4、curses库
curses 库以前是vi程序的一部分,后来从vi里提取出来成为一个独立的库。curses库对于编写终端相关的程序特别有用,比如要在终端某一行某一列定位输出,改变终端字体的颜色和终端模式。linux下的curses库用的是GNU实现的ncurses(new curses的意思)。
5、gtk+和KDE库
这两个库是开发GUI应用程序的基础库,现在linux下的大部份GUI程序都是基于这两个库开发的,对于它们 的学习也是很有必要的。
四、网络的学习
参考技术A 我试过了!!可以啊!!本回答被提问者采纳

linux下的c语言入门(ubuntu为例)(代码片段)

Linux下的C语言入门(以ubuntu为例)一、编辑器vi(vim)二、编译命令三、使用gdb调试代码四、多文件编译及makefile的使用五、拓展知识1.main()的真实写法应为:2.main函数中的return值代表该运行的成功与否3.两条命令之间可... 查看详情

linux下的c语言编程

一、工具的使用1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。2、学会makefile文件的编... 查看详情

linux下的c与windows下的c的区别

linux下的c与windows下的c有什么区别,是不是包含的头文件不同,我经常看见一些什么(dirent.h)(signal.h)之类的头文件,它们是什么?但是标准头文件应该是一样的吧,如stdio.h,stdlib.h等。还有linux下有没有c++,也就是linux下是不是也有... 查看详情

linux下的c编程:系统调用

...但是linux的系统调用,调用是linux的系统库,比如说unistd.h下的fork这个是Linux下特有,你在vs上,就没有这个库,也没有这个函数。同样在vs上写c,你可以引入头文件比如windows.h,显然这个库是Linux不具有的。简单说系统调用库根据... 查看详情

什么是linux下的c语言驱动开发?

驱动指的是硬件的驱动吗?为什么要在linux下开发?它和linux内核有什么关系?驱动一般是指硬件驱动,当然也有数据库驱动程序。至于为什么要在Linux下开发,主要是为了在Linux下使用测试。驱动程序就是Linux内核的一个重要组成部... 查看详情

linux环境下c编程指南的内容简介

...境下C编程指南(第2版)》的学习能够快速地学会Linux下的C语言编程,并能从一开始就养成良好的编程习惯,以便于读者低起点、高效率地掌握Linux环境下的编程知识。《Linux环境下C编程指南(第2版)》结构合理、概念清晰、实例丰富... 查看详情

在linux下的c语言编程时使用readdir的时候读取到的“.”和“..”怎么去掉?

我用如下的判断根本判断不出来:if((direntp->d_name==".")||(direntp->d_name==".."))而用printf打印出来的direntp->d_name的值确实就是“.”和“..”郁闷了谢谢你啊,搞定了,不过我想问一下在c中为什么直接用我的那个方... 查看详情

c语言实现windows,linux双版本下的进度条小程序,快来试一试吧(代码片段)

文章目录C语言缓冲区🚀1.输入缓冲区🍇模拟登录密码场景🍇从键盘将内容输入到内存的真正过程🍇解决方法:清空输入缓冲区🍉清掉一个字符🍉清空输入缓冲区所有字符🚀2.用户C语言级别的缓... 查看详情

1.5linux中大量使用脚本语言,而不是c语言!

说到在Linux下的编程,很多人会想到用C语言,Linux的内核、shell、基础命令程序,也的确是用C语言编写的,这首先证明了一点,C语言很强很通用。到目前为止,C语言依然垄断着计算机工业中几乎所有的系统编程,而且也正因为... 查看详情

如何在 Linux 下的 C 中确定 USB 存储(USB 闪存驱动器)“设备路径”

】如何在Linux下的C中确定USB存储(USB闪存驱动器)“设备路径”【英文标题】:howtodetermineUSBstorage(USBflashdrive)\'devicepath\'inCunderLinux【发布时间】:2013-12-2206:09:51【问题描述】:如何在Linux下使用C以编程方式枚举所有USB存储?我想... 查看详情

qt中能不能调用c语言的api。linux下的

我看完了“unix环境高级编程”,现在要学QT了,QT中能调用里面的API吗???如fork,waitpid,exec,thread_create,socket,connect,accept,之类的。平常用QT做软件的时候会调用到C语言的API吗???如果用的话,用的多吗???还有就是"unix... 查看详情

linux下的awk用法详解(代码片段)

(Linux下的awk用法详解)一、awk介绍1.AWK是一种处理文本文件的语言,是一个强大的文本分析工具。之所以叫AWK是因为其取了三位创始人AlfredAho,PeterWeinberger,和BrianKernighan的FamilyName的首字符。2.AWK拥有自己的语言:AWK程序设计语言,... 查看详情

c语言关于数组指针的问题(linux下的gcc环境)

#include<stdio.h>main()inta[3][4]=0,1,2,3,4,5,6,7,8,9,10,11;printf("%d,",a);printf("%d,",*a);printf("%d,",a[0]);printf("%d,",&a[0]);printf("%d\n",&a[0][0]);printf("%d,",a+1);printf("%d,",*(a+1));printf("%d,",a[... 查看详情

makefile

...9/article/details/1771246,留下学习。  最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。     &n 查看详情

linux开发必知内容整理libc、glibc和glib的关系

...异,希望对以后的编程开发提供帮助。glibc和libc都是Linux下的C函数库。libc是Linux下的ANSIC函数库;glibc是Linux下的GUNC函数库。那么ANSIC和GNUC有什么区别呢?ANSIC函数库是基本的C语言函数库,包含了C语言最基本的库函数。这个库可... 查看详情

windows下的socket网络编程(入门级)

windows下的socket网络编程clinet.c客户端server.c服务器端UDP通信的实现代码如下已经很久没有在windows下编程了,这次因为需要做一个跨平台的网络程序,就先写了个简单的winSocket网路通信的例子,以便以后用到的时候有个参考。window... 查看详情

linuxc与普通的c语言有啥不一样?

...回答被提问者和网友采纳 参考技术C没啥区别,都是c.linux下的c和windows下的c函数库不太一样 参考技术D一 查看详情

请问我有一个.so文件,如何在linux下编程使用呢?

...加#include<math.h>,编译的时候,加上-lm参数。注:linux下的.so文件为共享库,相当于windows下的dll文件。扩展资料: linux下编写调用so文件实例.so是Linux(Unix)下的动态链接库.和.dll类似. 比如:文件有:a.c,b.c,c.c gcc-ca.c&nb... 查看详情