编程基础
文章平均质量分 74
fjweaponlwp
这个作者很懒,什么都没留下…
展开
-
keil下直接生成bin文件的方法
原创 2013-03-31 14:34:22 · 707 阅读 · 0 评论 -
计算结构体大小
#include #include #include #define UINT32 unsigned int#define UINT16 unsigned short#define UINT8 unsigned char#define BOOL unsigned char//字节类型枚举enum Type{CHAR = 0, // 1字节原创 2013-03-31 15:12:33 · 527 阅读 · 0 评论 -
keil makefile lib
脚本文件@echo on@echo =====================================================@echo make by xxxxxxxxx@echo =====================================================@echo offdel *.l原创 2013-04-06 00:26:14 · 1237 阅读 · 0 评论 -
联合体和结构体字节对齐
对于联合体/结构体:1. 各元素的首地址(实践中可用偏移量)需被元素大小整除;2. 结构体大小(各元素大小之和)或联合体大小(最大元素的大小)被结构体对齐字节数(复合体元素要拆开来辨识结构体对齐字节数)整除结构体对齐字节数 = Min(8,max(结构体各元素大小)); 重要:默认8字节,可用pack()来转载 2013-03-22 22:41:49 · 830 阅读 · 0 评论 -
C++中的字节对齐机制
1. 基本概念字节对齐:计算机存储系统中以Byte为单位存储数据,不同数据类型所占的空间不同,如:整型(int)数据占4个字节,字符型(char)数据占一个字节,短整型(short)数据占两个字节,等等。计算机为了快速的读写数据,默认情况下将数据存放在某个地址的起始位置,如:整型数据(int)默认存储在地址能被4整除的起始位置,字符型数据(char)可以存放在任何地址位置(被1整除转载 2013-03-22 22:43:36 · 520 阅读 · 0 评论 -
数据区之代码段、数据段、堆、栈
进 程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途 不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数据段。一、Linux进程的五个段下面我们来简单归纳一下进程对应的内存空间中所包含的5种不同的数据区都是干什么转载 2013-03-22 22:32:29 · 484 阅读 · 0 评论