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

(c primer plus第五版)学习笔记

 
 
第一章概览
C是一种编译型的语言
编译型:就是把c语言编译成计算机能运行的机器代码
不同的计算机系统有着各自的编译器,来把c编译成对应的机器代码
特性:代码高效,可移植,功能强大和灵活
缺点:代码格式自由(特别是指针的使用)
 
C语言运行的七个步骤:
1.     定义程序功能
2.     设计程序
3.     编写代码
4.     编译成机器代码
5.     运行
6.     调试
7.     维护修改
第一和第二个步骤对于大的程序作用是很大的,不要忽略这两个步骤,把这两个步骤当成一种习惯,无论程序的大小。
 
 
目标代码文件、可执行文件和库
C程序从源代码变成可执行文件(机器代码)需要两个步骤:
1.     编译:编译器将源代码转为中间代码(目标代码)
2.     链接:链接器将中间代码(目标代码)与其他代码(启动代码start-up code和库文件)结合生成可执行文件


相关文档:

C/C++结构体字节对齐


[注]:最近在做UVC描述符的编辑工具,用到很多的结构,为了方便把结构体写成bin文件,需要把结构体中填充的字节去掉,在网上搜索得到这篇文章,感觉挺好的,转过来做个纪念。
结构体(struct)的sizeof值,并不是简单的将其中各元素所占字节相加,而是要考虑到存储空间的字节对齐问题。先看下面定义的两个结构体.
struct ......

C/C++运算符的优先级


Precedence Operator Description Example Overloadable Associativity
1
::
Scope resolution operator
Class::age = 2;
no
none
2
()
()
[]
->
.
++
--
const_cast
dynamic_cast
static_cast
reinterpret_cast
typeid
Function call
Member initalization
Array access
Member access from ......

高水平C程序员修养

在大型C语言项目工程或者linux内核中我们都会经常见到两个FASTCALL和armlinkage
两个标识符(修饰符),那么它们各有什么不同呢?今天就给大家共同分享一下自己的心得.
     大家都知道在标准C系中函数的形参在实际传入参数的时候会涉及到参数存放的问题,那么这些参数存放在哪里呢? 有一定理论基础的 ......

C/C++试题

1、bool、float、指针变量与"零值"比较的if语句?
答:
bool flag;   if(flag),if(!flag)
char *p;   if(p==NULL),if(p!=NULL)
float x;  
const float EPSILON = 1e-6;
if((x>=-EPSILON)&&(x<=EPSILON)) //(-0.000001~0.000001)
if((x<-EPSILON)&& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号