易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux下C开发之gcc,gdb的使用

gcc,gdb的使用
作者:zccst
 
上周五在图书馆借了一本《Linux软件工程师(C语言)实用教程》,让我收获良多。不仅仅是书中的知识,还有对知识体系和架构认识的深入。
 
Linux下C开发:
1,gcc,gdb的使用。
2,Makefile文件的编写。
3,系统函数的使用
4,文件操作
5,串行通信
6,进程控制
7,进程间通信
8,网络编程
9,图形编程
10,数据库编程
11,qt编程
 
 
 
 
Linux下C开发之——gcc,gdb的使用
 
gcc编译器
前提编辑工具的使用:vi  vim  Emacs。
vi hello.c
一、常见步骤:
对于只有一个源文件的简单程序,常常只有编译,运行两步。
1,gcc hello.c -o hello
2,./hello
 
二、gcc编译流程
gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步
hello.c  (源码) 
 
hello.i  生成预处理文件,
参数是“-E”,把hello.c -> hello.i。完整命令为gcc hello.c -o hello.i -E
 
hello.s  编译生成汇编文件, 
参数是“-S”,把hello.i -> hello.s。完整命令为gcc hello.i -o hello.s -S
 
hello.o  将汇编文件变为目标代码, 
参数是“-c”,把hello.s -> hello.o。完整命令为gcc hello.s -o hello.o -c
 
hello    链接目标代码,生成可执行程序, 
参数无,      把hello.o -> hello。  完整命令为gcc hello.o -o hello
 
./hello  (运行)
 
三、gcc的主要参数
1,总体参数
-E                  只进行预编译,不做其他处理
-S                  只是编译不汇编,生成汇编代码
-c                  只是编译不链接,生成目标文件“.o”
-o file             把输出文件输出到file里
-g           &nbs


相关文档:

C多维数组

 一、多维数组地址的表示方法
  设有整型二维数组a[3][4]如下:
  0 1 2 3
  4 5 6 7
  8 9 10 11
  设数组a的首地址为1000,各下标变量的首地址及其值如图所示。  
在前面曾经介绍过, C语言允许把一个二维数组分解为多个一维数组来处理。因此数组a可分解为三个一维数组,即a[0],a[1], ......

【题目4】如何自己实现C函数strstr()

解题思路: 这个网络上已经有很多答案,这里
列举一个复杂度为0(m*n)的例子。实现的原理
很简单,顺序遍历要查找的字符串,如果没有找
到,字符串指针往前一位,再往后比较要查找的
字符串(模式串),如下图所示:
a b c d  d  d a d a c a b d a d d d a d c k
     &nbs ......

ANSI C —— 格式化输出

【原型】
printf("<格式化字符串>
", <参量表>
);
 
int printf
(const char *format, ...);
int fprintf
(FILE *stream, const char *format, ...);
int sprintf
(char *str, const char *format, ...);
int snprintf
(char *str, size_t size, const char *format, ...);
vp ......

C和指针学习笔记(1)

       1、 经常看见return EXIT_SUCCESS或return EXIT_FAILURE,但都不知这两个来自何处,现在才知原来stdlib.h定义了EXIT_SUCCESS和EXIT_FAILURE符号。
在stdlib.h头文件里:
#define EXIT_SUCCESS    0
#define EXIT_FAILURE    1
    & ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号