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

¿¼²éǶÈëʽC¿ª·¢ÈËÔ±×îºÃµÄÊ®µÀÌâ²Î¿¼´ð°¸

Ïêϸ²Î¿¼´ð°¸
µÚ1Ìâ:   (b)
volatile×ÖÃæÒâ˼ÊÇÒ×ÓÚ»Ó·¢µÄ¡£Õâ¸ö¹Ø¼ü×ÖÀ´ÃèÊöÒ»¸ö±äÁ¿Ê±£¬Òâζ×Å ¸ø¸Ã±äÁ¿¸³Öµ(дÈë)Ö®ºó£¬ÂíÉÏÔÙ¶ÁÈ¡£¬Ð´ÈëµÄÖµÓë¶ÁÈ¡µÄÖµ¿ÉÄܲ»Ò»Ñù,ËùÒÔ˵Ëü"ÈÝÒ×»Ó·¢"µÄ¡£
ÕâÊÇÒòΪÕâ¸ö±äÁ¿¿ÉÄÜÒ»¸ö¼Ä´æÆ÷£¬Ö±½ÓÓëÍⲿÉ豸ÏàÁ¬£¬ÄãдÈëÖ®ºó£¬¸Ã¼Ä´æÆ÷Ò²ÓпÉÄܱ»ÍⲿÉ豸µÄд²Ù×÷Ëù¸Ä±ä;»òÕߣ¬¸Ã±äÁ¿±»Ò»¸öÖжϳÌÐò£¬»òÁíÒ»¸ö½ø³Ì
¸Ä±äÁË.
volatile ²»»á±»±àÒëÆ÷ÓÅ»¯Ó°Ï죬ÔÚlongjump ºó,ËüµÄÖµ ÊǺóÃæ¼Ù¶¨µÄ±äÁ¿Öµ,b×îºóµÄÖµÊÇ5,ËùÒÔ5±»´òÓ¡³öÀ´.
setjmp : ÉèÖ÷Ǿֲ¿Ìøת /* setjmp.h*/
Stores context information such as register values so that the lomgjmp function can return control to the statement following the one calling setjmp.Returns 0 when it is initially called.
Lonjjmp: Ö´ÐÐÒ»¸ö·Ç¾Ö²¿Ìøת /* setjmp.h*/
Transfers control to the statement where the call to setjmp (which initialized buf) was made. Execution continues at this point as if longjmp cannot return the value 0.A nonvolatile automatic variable might be changed by a call to longjmp.When you use setjmp and longjmp, the only automatic variables guaranteed to remain valid are those declared volatile.
Note: Test program without volatile qualifier (result may very)
¸üÏêϸ½éÉÜ£¬Çë²ÎÔÄ CÓïÑÔµÄsetjmpºÍlongjmp
µÚ2Ìâ:   (a)
½á¹¹ÌâµÄ³ÉÔ±ÔÚÄÚ´æÖеĵØÖ·ÊÇ°´ÕÕËûÃǶ¨ÒåµÄλÖÃ˳ÐòÒÀ´ÎÔö³¤µÄ¡£Èç¹ûÒ»¸ö½á¹¹ÌåµÄÖ¸Õë±»¿´³É ËüµÄµÚÒ»¸ö³ÉÔ±µÄÖ¸Õë,ÄÇô¸ÃÖ¸ÕëµÄÈ·Ö¸ÏòµÚÒ»¸ö³ÉÔ±
µÚ3Ìâ:  (a)
´ËÌâÄ¿½ÏÄÑ.
Õâ¸ö³ÌÐòµÄ·ÇµÝ¹é°æ±¾
int  what ( int x , int  n)
{
  int val;
  int product;
  product =1;
  val =x;
  while(n>0)
  {
     if (n%2 == 1)
       product = product*val;   /*Èç¹ûÊÇÆæÊý´ÎÃÝ,  x(val)ÒªÏȳËÉÏÒ»´Î,;  żÊý´ÎÃÝ,×îºó·µ»Øʱ²Å»áµ½ÕâÀï³ËÒÔ1*/
     val = val* val;
     n = n/2;
   }
   return product;
}/* ÓöþÔª¸´³Ë²ßÂÔ */
Ëã·¨ÃèÊö
(while n>0)
{
  if  next most significant binary digit of  n( power)&n


Ïà¹ØÎĵµ£º

AES/DES c¼Ó½âÃÜÊÕ²Ø

#1Â¥ µÃ·Ö£º0»Ø¸´ÓÚ£º2009-12-26 15:37:26
¼ÓÃÜÓкܶàÖÖ·½·¨.ͬʱC#Ò²ÌṩÁ˺ܶà¼ÓÃÜ·½·¨.ÄãÐèÒª¼ÓÃܺͽâÃÜÔÚ¼ÓÃÜËã·¨ÉÏÐèҪʹÓöԳƼÓÃÜ.ÎÒ¸øÄãÌṩһ¸ö¼òµ¥µÄËã·¨.ÔÚ±£´æµÄʱºò¿ÉÒÔʹÓöþ½øÖƵķ½Ê½À´±£´æµ½Îļþ.
C# code
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography ......

´Óprintf()̸c/c++Öпɱä²ÎÊýº¯ÊýµÄʵÏÖ


´Óprintf̸¿É±ä²ÎÊýº¯ÊýµÄʵÏÖ ×ªÌù
Ô­ÎÄ×÷ÕߣºÈÖÑÇÐÂ
ÕªÒª£ºÒ»Ö±ÒÔÀ´¶¼¾õµÃprintfËƺõÊÇcÓïÑÔ¿âÖй¦ÄÜ×îÇ¿´óµÄº¯ÊýÖ®Ò»£¬²»½öÒòΪËüÄܸñʽ»¯Êä³ö£¬¸üÔÚÓÚËüµÄ²ÎÊý¸öÊýûÓÐÏÞÖÆ£¬Òª¼¸¸ö¾Í¸ø¼¸¸ö£¬À´Õß²»¾Ü¡£printfÕâÖÖ¶Ô²ÎÊý¸öÊýºÍ²ÎÊýÀàÐ͵ÄÇ¿´óÊÊÓ¦ÐÔ£¬ÈÃÈ˲úÉúÁ˶ÔËü½øÐÐ̽Ë÷µÄŨºñÐËȤ¡£
¹Ø¼ü×Ö£ºprintf, ¿É±ä²ÎÊ ......

ʹÓÃC²Ù×÷MySQLÊý¾Ý¿â£¨vs 2008£©

×î½ü¼¸ÌìÏÐÀ´ÎÞÊ£¬±ã³¢ÊÔÁËÒ»ÏÂÓÃC²Ù×÷Êý¾Ý¿â£¬ÏÂÃæ±ãÊÇÎÒ²âÊԵľßÌå½á¹û£º
¿ª·¢»·¾³ÊÇwindows 7 ultimate(Ó¢ÎÄ°æ) IDE ÊÇvs 2008 professional ÖÐÎÄ°æ,Êý¾Ý¿âÊÇmysql 5.1
Ê×ÏÈ£¬ÎÒÔÚMySQL¿âÖд´½¨ÁËÒ»¸ötest±í£º
CREATE TABLE `test` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT ......

ÈçºÎÀí½âcºÍc++ µÄ¸´ÔÓÀàÐÍÉùÃ÷

int main(int argc, char* argv[])
    {
    /**//* ************************************************************
            Ö¸Õë
    **************************************************************/ ......

C#µ÷ÓÃC DLL

ÔÚºÏ×÷¿ª·¢Ê±£¬C#ʱ³£ÐèÒªµ÷ÓÃC++DLL£¬µ±´«µÝ²ÎÊýʱʱ³£Óöµ½ÎÊÌ⣬ÓÈÆäÊÇ´«µÝºÍ·µ»Ø×Ö·û´®ÊÇ£¬ÏÖ×ܽáһϣ¬·ÖÏí¸ø´ó¼Ò£º
VC++ÖÐÖ÷Òª×Ö·û´®ÀàÐÍΪ£ºLPSTR,LPCSTR, LPCTSTR, string, CString, LPCWSTR, LPWSTRµÈ
µ«×ªÎªC#ÀàÐÍÈ´²»ÍêÈ«Ïàͬ¡£
Ö÷ÒªÓÐÈçϼ¸ÖÖת»»£º
½«stringתΪIntPtr£ºIntPtr System.Runtime.InteropServ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ