码迷,mamicode.com
首页 > 其他好文 > 详细

期中总结

时间:2015-11-01 17:49:55      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:

熟知任务:

1. 复习Linux命令,特别是man -k, cheat, grep -nr xxx /usr/include

2. 复习vi, gcc, gdb,make的使用

3. 复习教材内容ch01 ch02 ch03 ch04 ch06 ch07

4. 复习前面的考题(答案解析见http://group.cnblogs.com/topic/73060.html) ,下次考试考每次考试错的最多的题目

5. 期中总结发一篇Blog:

    知识点总结

    自己的收获(不要假大空)

    自己的不足(要具体,有改进措施)

    课程建议和意见(要有理由)

 

一、常用命令总结

 

man -k:

 

常用来搜索,结合管道使用。例句如下:

 

man -k k1 | grep k2 | grep 2

 

搜索同时含有k1和k2,且属于系统调用。

 

最后的数字意味着帮助手册中的区段,man手册共有8个区段,最常用的是123,含义如下:

 

1.Linux 2.系统调用 3.c语言

 

但是当单独用man语句的时候,想查看其中的单独某个区段内的解释时,用法是这样的:

 

man 3 printf

 

即查找c语言中printf的用法。

 

cheat

cheat是非常好用的“打小抄”搜索工具,能够方便的告诉你你想要的内容。

示例:

 

cheat ls

 

技术分享

 

grep -nr

这条语句可以用来查找关键字,全文搜索,并且可以直接查找文件内的内容。其中:

n:为显示行号 r:为递归查找

例如,如果想查找某个宏,我们已知宏保存在include文件夹中,所以可以使用下列语句:

grep -nr XXX /usr/include(XXX为所要找的宏)

二、常用工具

 

vim

 

vim是一种非常好用的编辑器,总共有六种基本模式,最常用的是普通模式、插入模式和命令行模式。需要熟悉这三种模式之间的切换方式:

 

普通→插入: i 或 a 插入→普通: Esc 或 Ctrl + [ 普通→命令行: : 命令行→普通:Esc 或 Ctrl + [

 

常用的进入、保存和退出指令:

 

进入:vim 文件名 保存:命令行模式 :w 退出:命令行模式 :q

 

常用动作:

 

删除:dd删除整行 复制:yy复制整行 粘贴:p

 

※实用功能:交换上下行——ddp,快速交换光标所在行与它下面的行。

 

vim的功能很强大,并且可以移植到很多种不同的程序中,但是我们现在使用的过程中真正用到的命令很少也很简单,更多的技巧参见第二周笔记。

 

gcc

 

常用选项

 

-c 只编译不链接,生成目标文件.o -S 只编译不汇编,生成汇编代码 -E 只进行预编译,不做其他处理 -g 在可执行程序中包含标准调试信息 -o file 将file文件指定为输出文件 -v 打印出编译器内部编译各过程的命令行信息和编译器的版本 -I dir 在头文件的搜索路径列表中添加dir目录

 

编译过程

 

预处理:gcc –E hello.c –o hello.i; gcc –E调用cpp 生成中间文件 编 译:gcc –S hello.i –o hello.s; gcc –S调用ccl 翻译成汇编文件 汇 编:gcc –c hello.s –o hello.o; gcc -c 调用as 翻译成可重定位目标文件 链 接:gcc hello.o –o hello ; gcc -o 调用ld** 创建可执行目标文件

 

-o后面是接的你给生成的文件指定的名字,如果不指定,则默认为a.out

 

在命令行上运行这个可执行目标文件需要输入它的名字:

 

./a.out

 

其中./代表当前目录。

 

gdb

 

注意:使用GCC编译时要加“-g”参数,然后才能够用gdb调试

 

GDB最基本的命令有:

 

gdb programm(启动GDB) l 查看所载入的文件 b 设断点 info b 查看断点情况 run 开始运行程序 bt 打印函数调用堆栈 p 查看变量值 c 从当前断点继续运行到下一个断点 n 单步运行(不进入) s 单步运行(进入) quit 退出GDB

 

四种断点:

 

1.行断点 b [行数或函数名] <条件表达式> 2.函数断点 b [函数名] <条件表达式> 3.条件断点 b [行数或函数名] <if表达式> 4.临时断点 tbreak [行数或函数名] <条件表达式>

 

另外的调试工具:

 

cgdb,有单独的debug窗口,更方便查看

 

ddd,图形页面

 

Make和Makefile

 

这是实现自动化编译的好方法。

 

Makefile的一般写法:

 

一个Makefile文件主要含有一系列的规则,每条规则包含以下内容:

需要由make工具创建的目标体,通常是可执行文件和目标文件,也可以是要执行的动作,如‘clean’;

要创建的目标体所依赖的文件,通常是编译目标文件所需要的其他文件。

创建每个目标体时需要运行的命令,这一行必须以制表符TAB开头

 

格式为:

 

test(目标文件): prog.o code.o(依赖文件列表) tab(至少一个tab的位置) gcc prog.o code.o -o test(命令) ....... 即: target: dependency_files command

 

定义变量的两种方式:

 

1)递归展开方式 VAR=var (2)简单方式 VAR:=var

 

使用变量的格式为:

 

$(VAR)

 

 

 

 

期中总结

标签:

原文地址:http://www.cnblogs.com/20135336wwz/p/4928270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!