Linux C语言的学习笔记

来源:互联网 发布:交换机端口聚合配置 编辑:程序博客网 时间:2024/06/03 21:11

常用指令(Ubuntu系统中):

sudo apt-get update //更新安装列表sudo apt-get install vim //安装vimcc -v或者gcc -v //查看gcc编译器的版本gcc/cc a.c //编译a.c,再输入ls 可以显示:a.c a.out(可执行文件)./a.out //执行a.out输出内容gcc main.c -o main.out && ./main.out //两条命令同时执行echo $? //输出0表示程序执行成功,否则表示执行失败注意:./main.out && ls命令中只有./main.out的返回值为0才会执行ls,所以在main.c中使用return 0,若return 101,则echo $?输出101

Linux之多个源文件分而治之:

在vim命令模式下输入:sp max.c(可以在屏幕中新建一个max.c文件显示在同一个屏幕中)//max.c中的代码:int max(int a,int b){    if(a>b){        return a;    }else{        return b;    }}//a.c中的代码:int main(){    int c=max(1,2);    return 0;}需要使用的快捷键:Ctrl+W+方向键(上下) //切换上下两个文件需要使用到的命令::wqa  //保存(w)所有(a)并且退出(q)gcc max.c a.c -o main.out  //-o main.out:表示生成的可执行文件名称为main.out,使用./main.out执行程序gcc -c max.c -o max.o //将max.c编译成max.o文件gcc max.o a.c //编译a.c生成a.out

make工具的使用

make工具可以将大型的开发项目分成若干个模块(在Linux和Unix中很常用)

make -v //查看make工具的版本make clean  //清除之前的编译make install  //编译之后的文件安装

Makefile编写的基本规则:

#this is make file   //#表示注释hello.o:hello.c hello.h          gcc -c hello.c -o hello.o  #注意:命令行前面必须是一个“TAB键”,否则会编译错误!#一条规则包含三个:目标文件,目标文件依赖的文件,更新(或生成)目标文件的命令#目标hello.o依赖于hello.c,hello.h,生成hello.o的命令时是“gcc -c hello.c -o hello.o”//举例使用:hello.out:max.o min.o hello.c    gcc max.o min.o hello.cmax.o:max.c    gcc -c max.cmin.o:min.c    gcc -c min.c#最终的目标文件:hello.out(依赖于min.o,max.o,hello.c)#使用:wq保存退出之后输入make命令开始执行这些命令

main函数中的参数:

#include <stdio.h>int main(int argv,char* argv[]){    printf("argv is %d",argv);  //(1)    for(int i=0;i<agrv;i++){        printf("argc[%d] is %s",i,argc[i]); //(2)    }    return 0;}1.执行./main.out:(1)会输出argv is 12.执行./main.out -l:(1)会输出argv is 23.执行./main.out -l -a bb ccc dd:(1):输出argv is 6 (2):会输出:.argc[0] is ./main.out,argc[1] is -l,argc[2] is -a.......

C程序的编译过程(Linux环境下Gcc):http://blog.csdn.net/gengyichao/article/details/6544266

//生成预处理文件hello.i:1.gcc -o hello.i hello.c -E   2.gcc -o hello.i -E hello.c   3.gcc -E hello.c -o hello.i

gdb调试工具的使用

gdb常用命令介绍:

gdb -help  //查看gdb的常用用法gcc -g main.c -o main.out  //加-g参数之后才可以开启调试main.outgdb main.out  //调试main.out//输入gdb main.out开启调试之后的命令总结:list或l:列出当前调试的文件源代码   按Enter键:表示继续执行上次的命令start:开启断点执行,断点默认在mian方法下的第一行语句p a:表示输出变量a的值大小,输入n表示执行下一行语句   s:进入方法中执行   bt:查看当前的函数堆栈   f 1:切换到1栈   q:退出调试
0 0
原创粉丝点击