¡¶±à³ÌÖéçá¡·ÖеÄÎÊÌâÓÃCʵÏÖ——1
ÎÊÌâÃèÊö£ºÒ»Ë³ÐòÎļþÖÐÖÁ¶à´æÔÚ10000000¸ö¼Ç¼£¬Ã¿Ìõ¼Ç¼¶¼ÊÇÒ»¸ö7λÕûÊý£¬Çë¶Ô´ËÎļþÖÐÊý¾Ý½øÐÐÅÅÐò¡£
ÒªÇó£º1.³ÌÐò¿ÉʹÓÃÄÚ´æÖ»ÓÐ1MB¡£2.³ÌÐòÔËÐÐʱ¼ä¾¡¿ÉÄܵĶ̡£
²¹³ä˵Ã÷£ºÃ¿¸ö¼Ç¼¶¼ÊÇÒ»¸ö7λÕýÕûÊý£¬²¢ÇÒûÓÐÆäËûµÄ¹ØÁªÊý¾Ý£¬Ã¿¸öÕûÊýÖÁ¶àÖ»ÄܳöÏÖÒ»´Î¡£
ʵÏÖ¸ÙÒª£º
ÔÚÏÖʵÖУ¬Î»Í¼ºÍλÏòÁ¿ºÜ³£¼û£¬ÎÒÃÇ¿ÉÒÔʹÓÃÒ»¸ö20λµÄ×Ö·û´®À´±íʾһ¸öСÐ͵ÄСÓÚ20µÄ·Ç¸ºÕûÊý¼¯ºÏ¡£ÀýÈ磺ÎÒÃÇ¿ÉÒÔ½«¼¯ºÏ£û1£¬2£¬3£¬5£¬8£¬13£ý´æ´¢ÔÚÏÂÃæÕâ¸ö×Ö·û´®ÖУº01110100100001000000.¼¯ºÏÖдú±íÊý×Ö µÄ¸÷¸öλÉèÖÃΪ1£¬¶øÆäËûµÄλȫ²¿¶¼ÉèΪ0.
ÔÚÏÖʵÎÊÌâÖУ¬Ã¿¸öÕûÊýµÄ7¸öÊ®½øÖÆÊý×Ö±íʾÁËÒ»¸öСÓÚǧÍòµÄÊý×Ö¡£ÎÒÃǽ«Ê¹ÓÃÒ»¸ö¾ßÓÐһǧÍòλµÄ×Ö·û´®±íʾ¸ÃÎļþ£¬ÔÚ¸Ã×Ö·û´®ÖУ¬µ±ÇÒ¹«µ±ÕûÊýiÔÚ¸ÃÎļþÖÐʱ£¬µÚi¸öλ²Å´ò¿ª£¨ÉèΪ1£©¡£
ʵÏÖ´úÂ룺
1.λ²Ù×÷Í·Îļþ£ºbit.h
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#ifndef BIT_H
#define BIT_H
#define BIT_SIZE 10000000
#define BIT_UNIT int
unsigned int GetBitUnitSize(void);
unsigned int GetBitArraySize(void);
void InitBitArray(BIT_UNIT *p);
void SetBitValue(BIT_UNIT *p, unsigned int bit, short val);
unsigned short GetBitValue(BIT_UNIT *p, unsigned int bit);
void PrintArrayList(BIT_UNIT *p);
BIT_UNIT SetIndexBitValue(unsigned short index);
#endif
2.λ²Ù×÷cÎļþ£ºbit.c
#include "bit.h"
unsigned int GetBitUnitSize(void)
{
return sizeof(BIT_UNIT) * 8;
}
unsigned int GetBitArraySize(void)
{
return BIT_SIZE / GetBitUnitSize();
}
void InitBitArray(BIT_UNIT *p)
{
int array_size = GetBitArraySize();
int unit_size = GetBitUnitSize();
int i = 0;
for (i = 0; i < array_size; i++)
*(p + i) = *(p + i) << unit_size;
}
void SetBitValue(BIT_UNIT *p, unsigned int bit, short val)
{
if (bit >= BIT_SIZE) return;
unsigned int array_size = GetBitArraySize();
unsigned short unit_size = GetBitUnitSize();
unsigned int unit_index = bit / unit_size;
unsigned short bit_index = bit % unit_size;
if (bit_index == 0) {
unit_index--;
bit_index = unit_size;
}
Ïà¹ØÎĵµ£º
BioscomʹÓÃ×¢Ò⣺´®¿Ú½ÓÏß·½Ê½Îª4£¬6£»7£¬8·Ö±ð¶Ì½Ó¡£½ö´Ëº¯ÊýÒªÇó¡£
·ñÔò»áÔì³ÉÖ»ÄܽÓÊÜÎÞ·¨·¢ËÍÊý¾Ý¡£º¯Êý·µ»ØÖµ´íÎó£¡
º¯ÊýÃû: bioscom
¹¦ ÄÜ: ²Ù×÷portÖ¸¶¨µÄRS232Ò첽ͨѶ¿Ú
ÓÃ ......
http://www.cnblogs.com/hoodlum1980/archive/2007/08/15/857067.html
Ìâ¸É£ºÊäÈëÁ½¸ö½Ï´óµÄÊý£¬Êä³öÏà³ËµÄ½á¹û¡£
Òâ˼Ҳ¾ÍÊÇÁ½¸öÊýºÜ´ó£¬³¬³öÁËintµÄ´æ´¢·¶Î§¡£
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 100
void GetDigits( ......
1.ÒýÑÔ
¡¡¡¡C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ºÍº¯Êý¡£µ«ÊÇ£¬C++±Ï¾ ......
Visual C++6.0(5.0)¿ª·¢¹¤¾ß¹¦Äܷdz£Ç¿´ó£¬µ«ÊǶÔÓÚ³õѧÕßÀ´Ëµ£¬È´Óкܶàϸ½ÚµÄÎÊÌâÐèҪעÒâ¡£×÷ÕßËѼ¯ÕûÀíÁËÒÔÏÂһЩʵÓÃС¼¼ÇÉ£¬Ï£Íû¶Ô³õѧÕßÓÐËù°ïÖú¡£
1:ʹÓÃvc¿ª·¢ÏîĿʱ£¬³£»áÓöµ½ÕâÖÖÇé¿ö£º
¼´Ã÷Ã÷Ö»¸Ä¶¯ÁËÒ»¸öÎļþ£¬È´Òª°ÑÕû¸öÏîĿȫ²¿ÖØÐ±àÒëÁ¬½ÓÒ»´Î¡£¸Õ¸ÕÁ¬½ÓºÃ£¬Ò»ÔËÐУ¬ÓÖÌáʾ ......