易截截图软件、单文件、免安装、纯绿色、仅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


相关文档:

Lua调用C函数

根据《programming in lua》第26章的内容,我做出来的如下:
 
 
1.
首先,我的Lua目录为:D:\lua5.1\
环境为 windows ; VC++express edition 2008 ; Lua5.1.4 ; Notepad++
 
当然,你需要在VC++2008中配置好lua:
 
 
 
这里先不多做解释,假设你已经配置好了。
 
2.
& ......

C/C++移位运算符出界后的结果是不可预期的

转自:http://dev.csdn.net/article/29/29329.shtm
 
关于逻辑移位、算术移位可参见 迅雷深大笔试题部分。的一道题。
以前看到C++标准上说,移位运算符(<<、>>)出界时的行为并不确定:
The behavior is undefined if the right operand is negative, or greater than or equal to the length in bit ......

【题目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 ......

VS2005中检测和更正 C/C++ 代码缺陷


VS2005中检测和更正 C/C++ 代码缺陷
2006-11-26 15:55
VS2005中提供的检测方法:
1 IDE(集成开发环境)集成
2 #pragma 支持
3 批注支持
4 作为签入策略的一部分运行分析工具
5 Team System 与 Team Build 的集成
6 命令行支持
一 代码分析工具用于检测常见的编码错误,例如缓冲区溢出、内存未初始化、空指针 ......

Exper C Programming 零零散散

1.
关于char* 和const char*以及char**和const char**分别作为实参和形参的问题
传值实际上是类似于赋值的。
两个操作数都是指向限定符或无限定符的相容类型的指针,左边指针所指向的类型必须具有右边指针所指向类型的全部限定符。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号