位图算法 C语言
2024-08-24 17:17:20
#include <stdio.h> void set_bit(void *base, unsigned long n)
{
unsigned long *m = (unsigned long*) base;
unsigned long size = sizeof(unsigned long) * 8;
m[ n / size ] |= 1UL << (n % size);
} void clear_bit(void *base, unsigned long n)
{
unsigned long *m = (unsigned long*) base;
unsigned long size = sizeof(unsigned long) * 8;
m[ n / size ] &= ~(1UL << (n % size));
} int main()
{
unsigned long value[2] = {0};
set_bit(value, 0);
set_bit(value, 63);
printf("Set:\n");
printf("0x%016lx, 0x%016lx\n", value[0], value[1]);
clear_bit(value, 0);
clear_bit(value, 63);
printf("Clear:\n");
printf("0x%016lx, 0x%016lx\n", value[0], value[1]);
return 0;
}
最新文章
- sqlserver如何创建镜像图文教程(转)
- Microsoft Win32 to Microsoft .NET Framework API Map
- 使用emmet如何生成lipsum的随机内容
- css用clearfix清除浮动
- Unity3d Shortcuts
- PCA understanding
- Lombok(1.14.8) - @Getter, @Setter, @ToString, @EqualsAndHashCode &; @Data
- RabbitMQ远程访问配置
- Maximal Square 解答
- Centos7下配置Python3和Python2共存,以及对应版本Ipython安装配置
- 一步一步从原理跟我学邮件收取及发送 8.EHLO 命令详解
- 洛谷p1106 删数问题 题解
- flask 图文混排的简单操作
- myeclipce项目导入eclipse中报错
- vue.js 组件引用之初级
- 2018面向对象程序设计(Java)第15周学习指导及要求
- /dev/mem可没那么简单【转】
- display:box,按比列划分,水平均分,及垂直等高
- 07 json与os模块(进阶)
- [BZOJ4367][IOI2014]Holiday(决策单调性+分治+主席树)
热门文章
- 【scrapy】使用方法概要(四)(转)
- max_binlog_cache_size
- DotNet_Performance_Tuning_ANTS_Performance_Profiler
- node.js第11课(HTTPclient)
- 2. python 字符串常量
- Oracle 快速插入1000万条数据的实现方式
- 分析oracle索引空间使用情况,以及索引是否须要重建
- Unity3D脚本批量打包渠道包
- JSTL fmt 格式化时间
- FastJson和Gson和Json数据解析分析和用法