计算结构体大小
来源:互联网 发布:马拉多纳 数据 编辑:程序博客网 时间:2024/04/30 06:37
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define UINT32 unsigned int
#define UINT16 unsigned short
#define UINT8 unsigned char
#define BOOL unsigned char
//字节类型枚举
enum Type
{
CHAR = 0, // 1字节
SHORT, // 2字节
INT, // 4字节
DOUBLE, // 8字节
};
//结构体开始
void StartStruct()
{
}
//添加类型
UINT32 AddType(enum Type type)
{
}
//添加数组
UINT32 AddArray(enum Type type, UINT32 num)
{
}
//结构体嵌套开始
void BeginNestStruct()
{
}
//结构体嵌套结束
void EndNestStruct()
{
}
//结构体结束,返回结构体大小
UINT32 FinishStruct(UINT32 *size)
{
}
struct A
{
UINT8 a;
UINT32 b;
UINT16 c;
UINT32 d[3];
};
struct B
{
double a;
UINT8 b;
A d;
UINT16 c;
};
struct C
{
UINT8 a;
UINT16 b;
B c;
};
int main()
{
UINT32 size = 0;
StartStruct();
AddType(CHAR);
AddType(SHORT);
BeginNestStruct();
AddType(DOUBLE);
AddType(CHAR);
BeginNestStruct();
AddType(CHAR);
AddType(INT);
AddType(SHORT);
AddArray(INT,3);
EndNestStruct();
AddType(SHORT);
EndNestStruct();
FinishStruct(&size);
(size == sizeof(struct C)) ? printf("OK!!!!!!!!!\n") : printf("result must be %d\n",sizeof(struct C));
return 0;
}
#include <stdlib.h>
#include <string.h>
#define UINT32 unsigned int
#define UINT16 unsigned short
#define UINT8 unsigned char
#define BOOL unsigned char
//字节类型枚举
enum Type
{
CHAR = 0, // 1字节
SHORT, // 2字节
INT, // 4字节
DOUBLE, // 8字节
};
//结构体开始
void StartStruct()
{
}
//添加类型
UINT32 AddType(enum Type type)
{
}
//添加数组
UINT32 AddArray(enum Type type, UINT32 num)
{
}
//结构体嵌套开始
void BeginNestStruct()
{
}
//结构体嵌套结束
void EndNestStruct()
{
}
//结构体结束,返回结构体大小
UINT32 FinishStruct(UINT32 *size)
{
}
struct A
{
UINT8 a;
UINT32 b;
UINT16 c;
UINT32 d[3];
};
struct B
{
double a;
UINT8 b;
A d;
UINT16 c;
};
struct C
{
UINT8 a;
UINT16 b;
B c;
};
int main()
{
UINT32 size = 0;
StartStruct();
AddType(CHAR);
AddType(SHORT);
BeginNestStruct();
AddType(DOUBLE);
AddType(CHAR);
BeginNestStruct();
AddType(CHAR);
AddType(INT);
AddType(SHORT);
AddArray(INT,3);
EndNestStruct();
AddType(SHORT);
EndNestStruct();
FinishStruct(&size);
(size == sizeof(struct C)) ? printf("OK!!!!!!!!!\n") : printf("result must be %d\n",sizeof(struct C));
return 0;
}
- 计算结构体大小
- 计算结构体大小
- 结构体大小计算
- 计算结构体大小
- 计算结构体大小
- 结构体大小计算
- 结构体大小计算
- 结构体大小计算
- 结构体大小计算
- 计算结构体的大小
- 结构体大小的计算
- 计算结构体的大小
- sizeof 计算结构体大小
- 如何计算结构体大小
- 计算结构体的大小
- 计算结构体的大小
- 计算结构体的大小
- 计算结构体的大小
- linux终端乱码解决方案
- cis和ccd有什么技术区别啊
- Eclipse使用技巧
- Android WIFI的管理方法
- python 在windows下创建文件IOError的一个原因
- 计算结构体大小
- 集群做法
- 【D】二分查找
- Oracle set unused的用法
- Ext.namespace
- 什么是Segmentation fault(Core Dump)
- 【Linux】Linux安装和卸载软件
- zoj 3690 Choosing number 递推+矩阵快速幂
- android EditText获取光标位置并插入删除字符与设置光标颜色