使用 宏定义 实现的高级算法
来源:互联网 发布:linux nfsnobody 编辑:程序博客网 时间:2024/05/16 05:40
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>/* run this program using the console pauser or add your own getch, system("pause") or input loop */#define SOR(x) (x)*(x) //求平方#define Max(a,b) (((a)-(b)) == fabs((a)-(b)))?(a):(b) //求最大值#define Min(a,b) (((a)-(b)) == fabs((a)-(b)))?(b):(a) //求最小值#define ISUNSIGNED(a) ((a > 0)&&(~a > 0)) //判定变量是否是无符号的#define ISUNSIGNED_TYPE(type) ((type)(0-1) > 0) //判定类型是否是无符号的#define MySize(value) ((char *)((&value) + 1) - (char *)(&value)) // 求类型占用的空间大小#define OffSet(type,field) ((size_t)&(((type*)0)->field)) // 求结构体中的偏移struct str{int a;float f;double d;char c;};int main(int argc, char *argv[]) {printf("%d\n",OffSet(struct str,a)); // 0printf("%d\n",OffSet(struct str,f)); // 4printf("%d\n",OffSet(struct str,d)); // 8printf("%d\n",OffSet(struct str,c)); // 16return 0;}
1 0
- 使用 宏定义 实现的高级算法
- 宏的含参定义,和宏的高级使用
- 宏定义的高级用法
- C#高级编程学习笔记--------接口的定义和实现
- 高级宏定义"\","#","#@"和"##"
- C99 高级宏定义
- leetcode LRU Cache(高级缓存的最近最少使用算法实现)
- 宏的高级使用
- 宏的高级使用
- iOS 开发 高级:使用 宏定义macros (#,##,...,__VA_ARGS_)
- iOS 开发 高级:使用 宏定义macros (#,##,...,__VA_ARGS_)
- 宏定义的使用
- 宏定义的使用
- 宏定义的使用
- 宏定义的使用
- 宏定义的使用
- #宏定义的使用
- 宏定义的使用
- SSH Connection refused
- STM32的位带操作
- KVO监听UI控件的frame变化,kVO的简单使用,KVC的初步了解
- 使用AlertDialog创建对话框
- 饭一口一口吃,路一步一步走
- 使用 宏定义 实现的高级算法
- Ubuntu配置静态ip
- 机器学习心得(一)
- Mac平台下使用nm命令查看文件的符号表
- markdown使用手册(自己收藏用的)
- mysql
- HDOJ 1422 重温世界杯 (贪心)
- Android序列化——Serializable与Parcelable
- 同一个镜像配置的两台不同ip的CentOS主机只有一台能ping得了网的解决方案