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

C/C++ÖÐnearºÍfarµÄÇø±ð

C/C++ÖÐnearºÍfarµÄÇø±ð
      ¹Ø¼ü×ÖnearºÍfarÊÜÄ¿±ê¼ÆËã»úÌåϵ½á¹¹µÄÓ°Ï졣Ŀǰ±à³ÌÖÐʹÓò»¶à¡£
      near¹Ø¼ü×Ö´´½¨Ò»¸öÖ¸Ïò¿ÉÑ°Ö·ÄÚ´æµÍ¶Ë²¿·ÖµÄÄ¿±êÖ¸Õë¡£ÕâЩָÕëÕ¼ÓÃÄÚ´æµÄµ¥Ò»×Ö½Ú£¬²¢ÇÒËûÃÇÄܹ»Ö¸ÏòµÄÄÚ´æµ¥Ôª±»ÏÞÖƵ½256¸öλÖã¬Í¨³£ÊÇÔÚ0x0000~0x00ff·¶Î§ÖС£
      int near * ptr£»
      far¹Ø¼ü×Ö´´½¨Ò»¸öÄܹ»Ö¸ÏòÄÚ´æÖÐÈκÎÊý¾ÝµÄÖ¸Õ룺
      char far * ptr£»
  near   (½ü)Ö¸Õ룺16λ¶ÎÄÚÆ«ÒƵØÖ·    
  far(Ô¶)Ö¸Õ룺16λ¶ÎµØÖ·£«16λ¶ÎÄÚÆ«ÒƵØÖ·    
  huge(¾Þ)Ö¸Õ룺32λ¹æ¸ñ»¯µÄ¾ßÓÐΨһÐÔµÄÄÚ´æµØÖ·  
  CÓïÑԵĴæÖüÊôÐÔÓÉÁùÖÖ±àÒëģʽ¾ö¶¨(²Î¼ûTC¼¯³É»·¾³²Ëµ¥ÖеÄoption->compiler->modelÑ¡Ïî)£¬Ä¬ÈϵıàÒëģʽΪsmall,   ÔڸñàÒëģʽÏ£¬Ö¸ÕëµÄĬÈÏÊôÐÔΪnear¡£
²¹³ä£ºnearÖ¸ÕëÊÇ16λָÕ룬ÒÀÀµÒ»¸ö¶ÎµØÖ·¼Ä´æÆ÷£¬Ö¸Õë±äÁ¿¾ÍÊÇλÒÆÁ¿£¬ÀûÓà ¶ÎµØÖ·¼Ä´æÆ÷+Ö¸Õë À´Ñ°Ö·£¬ËùÒÔÓÐ64KÖ®ÏÞÖÆ¡£
         far Ö¸ÕëÊÇ32λָÕ룬²»µ«ÓÐ16λµÄλÒÆÁ¿£¬»¹ÓÐ16λµÄ¶ÎµØÖ·£¬µ«´ËÖ¸ÕëÓиöȱÏÝ£¬ÔöÁ¿Ê±Ö»¼Óµ½Î»ÒƲ¿·Ö£¬Ò»µ©16λµÄλÒÆÁ¿³¬¹ýÁËFFFF¾Í»á»Øµ½Õâ¸ö¶ÎµØÖ·µÄ³õʼ¡£
         ËùÒÔ£¬ÓÖÒýÈëÁËhugeÖ¸Õ룬hugeÖ¸ÕëÓëfarÒ»Ñù£¬ÆäÇø±ð½öÔÚÓÚʹÓÃÁ˱ê×¼»¯µÄ·½·¨À´±íʾ£¬ÕâÑùËùÓеĵØÖ·¶¼ÓÐÒ»¸öΨһµÄ±íʾ·½·¨£¬´Ó¶ø±ÜÃâÁËfarÖ¸ÕëµÄÎÊÌâ¡£
         ¿ÕÖ¸Õë¹æ¶¨ÁËÒ»ÖÖÖ¸Õë״̬£¬Èç¹ûûÓÐÕâ¸ö¿ÕÖ¸Õ룬¾ÍÈçÊý×ÖûÓÐÁË0¡£     


Ïà¹ØÎĵµ£º

ÓÃCдµÄ3DÃÔ¹¬

          Boss˵£¬Òª¿´OpenGL£¬¿´ÁË¿ìÒ»¸öÔ£¬×ÜËã³öÁ˸öÏñÑùµÄ¶«Î÷£¬ÓÃCдÁ˸ö3DÃÔ¹¬£¬
ËäȻֻÓÐ350ÐÐ
       ´úÂ룬²»¹ý±ßѧ±ßд£¬×ã×ãдÁËÒ»ÖÜʱ¼ä£¬»¹ÊÇСÓгɾ͸еģ¬»î»î»î£¡
         &n ......

²»ÓÃÁÙʱ±äÁ¿½»»»Á½¸öÊýµÄÖµ(CʵÏÖ)

µ±Òª½»»»Á½¸öÊýµÄֵʱ£¬Í¨³£µÄ×ö·¨ÊǶ¨ÒåÒ»¸öÁÙʱ±äÁ¿£¬È»ºóÔÙ½øÐн»»»¡£ÄÇôÄܲ»Äܲ»ÓÃÁÙʱ±äÁ¿¶ø½»»»Á½¸öÊýµÄÖµÄØ£¿¿ÉÒԵģ¡CÓïÑÔÌṩµÄÒì»òÔËËã¾Í¿ÉÒÔʵÏÖÕâÑùµÄ²Ù×÷¡£
 
Òì»òÔËËã·û^Ò²³ÆXORÔËËã·û£¬ËüµÄ¹æÔòÊÇÈô²Î¼ÓÔËËãµÄÁ½¸ö¶þ½øλͬºÅ£¬Ôò½á¹ûΪ0£¨¼Ù£©£»ÒìºÅΪ1£¨Õ棩¡£¼´0 ^ 0 = 0, 0 ^ 1 = 1, 1 ^ 0 = 1, ......

´¿CʵÏÖc++Àà

//#include "stdafx.h"
/*
ÃèÊö:´¿cÄ£ÄâÀà,´¿c±àдc++Àà,´¿cʵÏÖc++ÀàµÄ¼òµ¥·¶Àý,½á¹¹Ä£ÄâÀà,struct ±àдclass.
c±àдÀàÊÇʵÏÖ´¿c±àдcom×é¼þµÄ»ù´¡¡£
*/
#include <stdio.h>
typedef struct _Vtbl
{
    void (*AddRef)(struct CObject* obj,int);//ËùÓеĺ¯ÊýµÄµÚÒ»¸ö²ÎÊýÀàËÆclassµÄÒþÄäµÄ ......

C/C++Éî²ã̽Ë÷

Ò»¡¢
1¡¢¹ØÓÚ×Ö½Ú˳Ðò£º»°ËµÔÚÌض¨µÄÓ²¼þƽ̨ÉÏ£¬¶à×Ö½ÚÊý¾ÝµÄ˳Ðò´æ·ÅÓÐÁ½ÖÖ·½Ê½£¨little-endian¡¢big-endian£©¡£Ç°ÕßµÄÊý¾ÝµÄµÍ×Ö½Ú
     ²¿·Ö´æ·ÅÔڵ͵ØÖ·Äڴ棬ºóÕßÇ¡ºÃÏà·´¡£PCÒ»°ãÊÇ»ùÓÚIA-32΢´¦ÀíÆ÷£¬ÊôÓÚlittle-endian¡£Ä³Ð©RISC¼Ü¹¹µÄCPU£¬ÀýÈçSPARC¡¢
    POWERPCµÈ£¬ÔòÊ ......

c/c++ ×óÖµ ÓÒÖµÌÖÂÛ

×óÖµÐÔ£¨lvalueness£©ÔÚC/C++ÖÐÊDZí´ïʽµÄÒ»¸öÖØÒªÊôÐÔ¡£Ö»ÓÐͨ¹ýÒ»¸ö×óÖµ±í´ïʽ²ÅÄÜÀ´ÒýÓü°¸ü¸ÄÒ»¸ö¶ÔÏó£¨object£©µÄÖµ¡££¨Ä³Ð©Çé¿öÏ£¬ÓÒÖµ±í´ïʽҲÄÜÒýÓã¨refer£©µ½Ä³Ò»¸ö¶ÔÏ󣬲¢ÇÒ¿ÉÄܼä½ÓÐ޸ĸöÔÏóµÄÖµ£¬ºóÊö£©¡£
    ºÎν¶ÔÏó£¿Èç¹ûûÓÐÃ÷ȷ˵Ã÷£¬ÕâÀï˵µÄ¶ÔÏ󣬺ÍÏÁÒåµÄÀà/¶ÔÏó£¨class/object£© ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ