
程序设计基础
flymachine
这个作者很懒,什么都没留下…
展开
-
C语言常用宏定义技巧(转)
1、防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2、重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef unsigned char boolean; /* Boolean value type. */ typedef unsig转载 2011-11-22 15:18:30 · 505 阅读 · 0 评论 -
如何使用好printf
1) unsigned long long offset = 0; printf("%llu", offset);原创 2011-12-02 17:17:13 · 463 阅读 · 0 评论 -
Makefile and Example
1. 这个Makefile能把目录下的所有.c文件编译成.o文件 -------------------------------------------------------------------------------------------------------- CC=gcc CFLAGS:=-Wall -O2 SOURCE=$(wildcard *.c) OBJS=$(SO原创 2011-12-02 17:55:18 · 654 阅读 · 0 评论 -
using namespace std
所谓namespace,是指标识符的各种可见范围。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。 目录 二、namespace是指标识符的各种可见范围 1、直接指定标识符。 2、使用using关键字。 3、最方便的就是使用using namespace std 三、简便理解 二、namespace是指标识符的各种可见范围 1、转载 2012-01-18 13:09:50 · 427 阅读 · 0 评论 -
C语言当中位段的使用
位段以位为单位定义结构体(或共用体)中成员所占存储空间的长度。 含有位段的结构体类型称为位段结构。 位段结构也是一种结构体类型,只不过其中含有以位为单位定义存储长度的整数类型位段成员。采用位段结构既节省存储空间,又可方便操作。 位段结构中位段的定义格式为: unsigned : 例如: struct bytedata {unsigned a:2; /*位段a,转载 2012-03-02 15:43:19 · 458 阅读 · 0 评论 -
C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)
多个值定义时,需要用以下的方式: #if defined(CONFIG_X2_700) || defined(CONFIG_X2_900) 预处理过程扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器。可见预处理过程先于编译器对源代码进行处理。 在C语言中,并没有任何内在的机制来完成如下一些功能:在编译时包含其他源文件、定义宏、根据条件决定编译时是否包含某些转载 2012-03-06 11:50:04 · 831 阅读 · 0 评论 -
详细讲解 关于Linux静态库和动态库的分析
基本概念 库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。 例如:libhello.so libhello.a 为了在同一系统中使用不同版本的库,可以在库文件名后加上版本号为后缀,例如: libhello.so.1.0,由于程序连接默认以.so为文件后缀名。所以为了使用这些库,通常使用建立符号连接的方式。 ln -s libhello.so.1.0 libhello.so转载 2012-03-12 21:18:46 · 609 阅读 · 0 评论