[×ªÔØ] Lua ÖÐÓë C ²»Í¬µÄÉè¼Æ
¾¡¹Ü Lua µÄ¹Ø¼ü´ÊµÄÉè¼Æ£¬ÔËÐзûµÄÉè¼Æ£¬Óï·¨µÄÉè¼ÆµÈ·½ÃæÓë C ºÜÏàËÆ£¬µ«ÎÒÃÇ»¹Òª×¢ÒâÆäÃ÷ÏÔ²»Í¬µÄµØ·½¡£
Ìõ¼þÅжÏʱµÄÕæ¼ÙÌõ¼þ
Lua ÖÐËùÓеÄÖµ¶¼¿ÉÒÔ×÷ΪÌõ¼þ¡£ÔÚ¿ØÖƽṹµÄÌõ¼þÖгýÁË false ºÍ nil Ϊ¼Ù£¬ÆäËûÖµ¶¼ÎªÕæ¡£ËùÒÔ Lua ÈÏΪ 0 ºÍ ¿Õ´® ¶¼ÊÇÕæ¡£
¶ø C ÖУ¬ÈÏΪֻҪÊÇÔÚÄÚ´æÖбíÏÖΪ 0 ÖµµÄ·ûºÅ¶¼Îª¼Ù¡£
×Ö·û´®
Lua ÖÐ×Ö·û´®µÄ¶¨ÒåÊÇ ×Ö·ûµÄÐòÁС£lua µÄ×Ö·û´®¿ÉÒÔ°üº¬ÈκÎÊýÖµ×Ö·û£¬°üÀ¨Ç¶ÈëµÄ 0¡£ÕâÒâζ×ÅÄã¿ÉÒÔ´æ´¢ÈÎÒâµÄ¶þ½øÖÆÊý¾ÝÔÚÒ»¸ö×Ö·û´®Àï¡£Lua ±¾ÉíÓÐÏàÓ¦µÄº¯ÊýÀ´´¦ÀíÕâÑùµÄ×Ö·û´®¡£
¶ø C ÓïÑÔÖУ¬ËäȻҲ¿ÉÒÔÔÚÒ»¸ö×Ö·û´®Öдæ·Å 0£¬µ«Æä×Ö·û´®´¦Àíº¯Êý²»ÄÜÕýÈ·´¦Àí·ÅÔÚÖмäµÄÁãÖµ£¬ÒòΪ C ÖеÄËã·¨²»ÊÇÓó¤¶ÈÀ´×öÅжϣ¬¶øÊÇÒÔÓöµ½µÚÒ»¸öÁãÖµÀ´Åжϵġ£
תÒå×Ö·û:
\a bell \b back space -- ºóÍË
\f form feed -- »»Ò³ \n newline -- »»ÐÐ
\r carriage return -- »Ø³µ \t horizontal tab -- ÖÆ±í
\v vertical tab \\ backslash -- "\"
\" double quote -- Ë«ÒýºÅ \' single quote -- µ¥ÒýºÅ
\[ left square bracket -- ×óÖÐÀ¨ºÅ \] right square bracket -- ÓÒÖÐÀ¨ºÅ
»¹¿ÉÒÔÓÃ[[…]]±íʾ×Ö·û´®,ÕâÖÖÐÎʽµÄ×Ö·û´®¿ÉÒÔ°üº¬¶àÐпÉÒÔǶÌ×ÇÒ²»»á½âÊÍתÒåÐòÁС£
ÔËÐÐʱ£¬Lua»á×Ô¶¯ÔÚstringºÍnumberÖ®¼ä×Ô¶¯½øÐÐÀàÐÍת»»¡£
¹ØÏµÔËËã·û
Lua ÖеIJ»µÈºÅÊÇ ~=£¬
¶ø C ÖеIJ»µÈºÅÊÇ !=¡£
Âß¼ÔËËã·û
Lua ÖеÄÂß¼ÔËËã·ûÊÇ and, or, not£¬¶ø C ÖеÄÂß¼ÔËËã·ûÊÇ &&, ||, !¡£¶øÇÒËüÃǵÄÓ÷¨ºÜ´óµÄ²»Ò»Ñù£¬Lua µÄÂß¼ÔËËã·ûµÄÓ÷¨ÏÔµÃÓеã“С¼¼ÇÉ”¡£
Lua Âß¼ÔËËã·ûÈÏΪ false ºÍ nil ÊǼ٣¨false£©£¬ÆäËûÎªÕæ£¬0Ò²ÊÇtrue¡£
and ºÍ or µÄÔËËã½á¹û²»ÊÇ true ºÍ false£¬¶øÊǺÍËüµÄÁ½¸ö²Ù×÷ÊýÏà¹Ø¡£
not µÄ½á¹ûÒ»Ö±·µ»Ø false »òÕß true¡£
a and b -- Èç¹ûaΪfalse£¬Ôò·µ»Øa£¬·ñÔò·µ»Øb
a or b -- Èç¹ûaΪtrue£¬Ôò·µ»Øa£¬·ñÔò
Ïà¹ØÎĵµ£º
һƪ½²¶ÔÆë±È½ÏºÃµÄÎÄÕ£¬×ªÌùÈçÏÂ:
´óÖ±ê×¢Ò»¶þ:
1.ÄÚ´æ¶ÔÆë:¼ÆËã»úϵͳ¶Ô»ù±¾ÀàÐÍÊý¾ÝÔÚÄÚ´æÖдæ·ÅµÄλÖÃÓÐÏÞÖÆ£¬ËüÃÇ»áÒªÇóÕâЩÊý¾ÝµÄÊ×µØÖ·µÄÖµÊÇij¸öÊýk(ͨ³£ËüΪ4»ò8)µÄ±¶ÊýkÔò±»³ÆÎª¸ÃÊý¾ÝÀàÐÍµÄ¶ÔÆëÄ£Êý(alignment modulus)
2.²»Í¬±àÒëÆ÷ĬÈϵÄ×î´ó¶ÔÆë×Ö½ÚÊýÊDz»Ò»ÑùµÄ,±ÈÈçvc==8,gcc==4,¿ÉÒÔͨ¹ ......
Win32 Equivalents for C Run-Time Functions
ID: Q99456
The information in this article applies to:
Microsoft Win32 Application Programming Interface (API), included with:
Microsoft Windows NT, versions 3.1, 3.5, 3.51
Microsoft Windows 95
SUMMARY
Many of the C Run-time functions have ......
freadº¯ÊýºÍfwriteº¯Êý
1.º¯Êý¹¦ÄÜ
ÓÃÀ´¶Áдһ¸öÊý¾Ý¿é¡£
2.Ò»°ãµ÷ÓÃÐÎʽ
fread(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
3.˵Ã÷
£¨1£©buffer£ºÊÇÒ»¸öÖ¸Õ룬¶ÔfreadÀ´Ëµ£¬ËüÊǶÁÈëÊý¾ÝµÄ´æ·ÅµØÖ·¡£¶ÔfwriteÀ´Ëµ£¬ÊÇÒªÊä³öÊý¾ÝµÄµØÖ·¡£
£¨2£©size£ºÒª¶ÁдµÄ×Ö½ÚÊý ......
1¡¢¿ìËÙ³õʼ»¯
char *str = new [size];
str[0]='\0';
2¡¢memcpyµÄÃîÓÃ
ÊÔÌâ6£ºÒÑÖªWAVÎļþ¸ñʽÈçÏÂ±í£¬´ò¿ªÒ»¸öWAVÎļþ£¬ÒÔÊʵ±µÄÊý¾Ý½á¹¹×éÖ¯WAVÎļþÍ·²¢½âÎöWAV¸ñʽµÄ¸÷ÏîÐÅÏ¢¡£
WAVEÎļþ¸ñʽ˵Ã÷±í
Æ«ÒÆµØÖ· ×Ö½ÚÊý Êý¾ÝÀàÐÍ ÄÚ ÈÝ
ÎļþÍ·
00H 4 Char "RIFF"±êÖ¾
......