如何学习linux下的c/c++编程
我计划的学习历程:
1. c和c++的基础知识,这个和操作系统无关,在windows上也可以学。c语言语法相对简单一点,c++不需要把所有的知识点都学会,要知道基本的封装,继承,多态之类的,还有STL。更深入的学习应该是在以后的工作中遇到问题了再去查资料。
2. 看书《APUE》,做书上的习题,掌握文件,系统调用,线程、进程、网络编程等基本知识(多是c实现的),加深对语言和系统的了解。这个阶段实际上就是熟悉linux系统的API的过程了。使用的编程工具组合:VI/EMACS/GCC/GDB。虽然有可视化的工具CodeBlocks和Eclipse,但是对初学者没有必要使用。
3. 寻找一些别人写的优秀的代码来研究。可以到各大论坛的精华区,或者sf上面寻找一些小的开源工程研究下。比如一个简单的socket聊天程序,或者多线程程序。
4. 这个过程与3是同步进行的,开始自己动手尝试编写实际有用的程序。比如一个聊天程序,一个FTP客户端,或者一个Email收发程序,图片演示程序,小游戏,数据表单软件等等。
5. 选择感兴趣的地方钻研。linux下涉及的东西很多,比如多线程,网络,linux内核等。
6. 其他。c/c++只是一门语言,学linux不应该局限于此,象shell脚本,Python,Perl都是值得去学习。
相关文档:
系统收到邮件都会保存在“/var/spool/mail/[linux用户名]”文件中。
在linux中输入mail,就进行了收件箱,并显示二十封邮件列表。
此时命令提示符为"&"
unread 标记为未读邮件
h|headers 显示当前的邮件列表
l|list 显示当前支持的命令列表
?|help 显示多个查看邮件列表的命令参数用法
d 删除当前邮 ......
众所周知,文件系统是操作系统最为重要的一部分。每种操作系统都有自己的文件系统。文件系统直接影响着操作系统的稳定性和可靠性。Linux下的文件系统通常有两种,即日志文件系统和非日志文件系统,以下简单介绍两类文件系统。
一、 非日志文件系统
非日志文件系统在工作时,不对文件系统的更改进行日志记录。
文件系统通 ......
fedora linux 几乎支持任何格式的文件系统 ntfs也能支持
装linux 时选择定制分区 在磁盘设置下记录你的各个盘符的情况
例如我的机子硬盘分区的挂载情况是这样的,每个人都不同 装机子的时候注意记下来
我的机子: /dev/sda 1 对应的 ......
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。
一、流式文件操作
这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下:
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File des ......