Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

¡¶±à³ÌÖéçá¡·ÖеÄÎÊÌâÓÃ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;
}


Ïà¹ØÎĵµ£º

¶ÑÕ»µÄC´úÂëʵÏÖ

2009-09-13     16:42:43  
 ½ñÌìʵÏÖ¶ÑÕ»½á¹¹²¿·ÖµÄ´úÂ룬²¢ÓÃÒ»¼òµ¥³ÌÐò²âÊԳɹ¦¡£
stack.h:
#ifndef _STACK_H_
#define _STACK_H_
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#define STACK_INIT_SIZE 5
#define STACKINCREMENT 5
t ......

ANSI C——printf

¡¾º¯ÊýÔ­ÐÍ¡¿
        int printf(char *format...);
¡¾¹¦ÄÜÃèÊö¡¿
        ±ê×¼Êä³öº¯Êý¡£
¡¾¾ÙÀý¡¿
#include<stdio.h>
int main ( int argc, char *argv[] )
{
printf("hello world!!\n");
return 0;
}
¡¾ÊµÏÖ·ÖÎ ......

Ò»µÀcµÄÃæÊÔÌ⣬´óÊýÏà³Ë

 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( ......

CÈô¸ÉʵÓÃС¼¼ÇÉ

Visual C++6.0(5.0)¿ª·¢¹¤¾ß¹¦Äܷdz£Ç¿´ó£¬µ«ÊǶÔÓÚ³õѧÕßÀ´Ëµ£¬È´Óкܶàϸ½ÚµÄÎÊÌâÐèҪעÒâ¡£×÷ÕßËѼ¯ÕûÀíÁËÒÔÏÂһЩʵÓÃС¼¼ÇÉ£¬Ï£Íû¶Ô³õѧÕßÓÐËù°ïÖú¡£
  1:ʹÓÃvc¿ª·¢ÏîĿʱ£¬³£»áÓöµ½ÕâÖÖÇé¿ö£º
    ¼´Ã÷Ã÷Ö»¸Ä¶¯ÁËÒ»¸öÎļþ£¬È´Òª°ÑÕû¸öÏîÄ¿È«²¿ÖØбàÒëÁ¬½ÓÒ»´Î¡£¸Õ¸ÕÁ¬½ÓºÃ£¬Ò»ÔËÐУ¬ÓÖÌáʾ ......

C/C++Öеĺ¯Êý²ÎÊý´«µÝ»úÖÆ(תÔØ)

 Ò»¡¢ º¯Êý²ÎÊý´«µÝ»úÖƵĻù±¾ÀíÂÛ ¡¡¡¡º¯Êý²ÎÊý´«µÝ»úÖÆÎÊÌâÔÚ±¾ÖÊÉÏÊǵ÷Óú¯Êý£¨¹ý³Ì£©ºÍ±»µ÷Óú¯Êý£¨¹ý³Ì£©ÔÚµ÷Ó÷¢Éúʱ½øÐÐͨÐŵķ½·¨ÎÊÌâ¡£»ù±¾µÄ²ÎÊý´«µÝ»úÖÆÓÐÁ½ÖÖ£ºÖµ´«µÝºÍÒýÓô«µÝ¡£ÒÔÏÂÌÖÂ۳Ƶ÷ÓÃÆäËûº¯ÊýµÄº¯ÊýΪÖ÷µ÷º¯Êý£¬±»µ÷Óõĺ¯ÊýΪ±»µ÷º¯Êý¡£¡¡¡¡Öµ´«µÝ£¨passl-by-value£©¹ý³ÌÖУ¬±»µ÷º¯ÊýµÄÐÎʽ²Î ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ