1¡¢´íÎó(err_return)µÄºê¶¨Òå
#define err_return(num,fmt,args) \
do
{
printf("[%s:%d]"fmt"\n",__FILE__,__LINE__,##args);return(num);
} while(0)
-1 ÊÇreturnµÄ·µ»ØÖµ£¬±íʾÓдíÎó£»
fmt ÊÇÒ»¸ö×Ö·û´®£¬ÓÃÓÚ´òÓ¡´íÎóÐÅÏ¢£»
args±íʾ²ÎÊýµÄ¸öÊý£»--Õâ¸öÓÐÒÉÎÊ£¬__FILE__,__LINE__,##args ÊÇʲôÒâ˼£¿
ÁíÍ⣺ while(0)ÊÇʲôÒâ˼£¬Ê²Ã´Ìõ¼þÏ¿ÉÒÔÍ˳ö£¿
¾ßÌåµ÷ÓÃʵÀý£ºerr_return(-1,"luaL_newstat() failed",1);
²¹³ä½âÊÍ£º
//__FILE__ ½øÐбàÒëµÄÔ´ÎļþÃû
//__LINE__ Îļþµ±Ç°ÓеÄÐкÅ(×¢Òâ:ÊÇ"µ±Ç°")
//__DATE__ Îļþ±»±àÒëµÄÈÕÆÚ
//__TIME__ Îļþ±»±àÒëµÄʱ¼ä
##ÊÇ×Ö·ûÆ´½Ó
ÏñÕâÑù
¡¡¡¡ÔÚ#defineÖУ¬±ê×¼Ö»¶¨ÒåÁË#ºÍ##Á½ÖÖ²Ù×÷¡£#ÓÃÀ´°Ñ²ÎÊýת»»³É×Ö·û´®£¬##ÔòÓÃÀ´Á¬½ÓÁ½¸öǰºóÁ½¸ö²ÎÊý£¬°ÑËüÃDZä³ÉÒ»¸ö×Ö·û´®¡£ eg.ab##cd ¾ÍÊÇabcd, m##1 ¾ÍÊÇm1;
ÁíÍ⣺ while(0)ÊÇʲôÒâ˼£¬Ê²Ã´Ìõ¼þÏ¿ÉÒÔÍ˳ö£¿
Ö±½ÓÍ˳ö£¬0Ϊfalse
0ÊÇfalseËùÒÔÖ»Ö´ÐÐÒ»´Îdo¾ÍÍ˳öÁË
while()Ñ»·½øÈëµÄÌõ¼þÊÇ£¬Ìõ¼þΪTRUE£¬ÒòΪ0ÊÇFALSE£¬ËùÒÔÑ»·Ò»´Î¾ÍÍ˳ö£»
do~while() Ñ»·Ö´ÐÐÒ»´ÎdoÀïÃæµÄÄÚÈÝÈ»ºóÍ˳ö£¬Èç¹ûÖ±½ÓÊÇwhile()Ñ»·£¬Ôò²»»á½øÈëÑ»·Ì壻
2¡¢ÔÚluaÖе÷ÓÃCº¯Êý£º
£¨1£©CÖÐдºÃluaÒªµ÷Óõĺ¯Êý
//luaÖÐÒªµ÷ÓõÄcº¯Êý¶¨Òå,ʵÏÖ¼Ó·¨
int csum(lua_State* l) //¶¨Ò庯Êý£¬º¯Êý²ÎÊýÊÇlua_State* l£¬ÕâÒ²ÊÇÿ¸öluaÒªµ÷ÓõÄCº¯ÊýµÄд·¨£»
{
int a = lua_tointeger(l,1) ; //lua_tointeger()»ñµÃÕûÐÍ·µ»ØÖµ£¬Ò»°ãÊǰÑlua´«½øÈ¥µÄÊýÖµ£¨²ÎÊý»òÕßÈ«¾Ö±äÁ¿£©×ª»»³ÉÕûÐΣ»
int b = lua_tointeger(l,2) ; //ÕâÀïÊÇÖ¸µÚ¶þ¸ö²ÎÊý£¬±»×ª»¯³ÉÕûÐΣ»
lua_pushinteger(l,a+b) ; //lua_pushinteger()ÕâÀïÊǰѷµ»ØÖµ£¨a+b£©Ñ¹ÈëÕ»
return 1 ; //·µ»ØÖµµÄÊýÁ¿£»
}
¿É¼û£¬luaµ÷ÓÃCº¯Êý£¬Ê×ÏÈÊÇҪдºÃCÖеĺ¯ÊýµÄ£¬Ê×ÏȰѺ¯Êý²ÎÊýת»¯³ÉÏëÒªµÄÀàÐÍ£¬È»ºó°Ñ·µ»ØÖµ±í´ïʽѹ
linuxÏÂÃæ´®¿Ú¹¤¾ßC-kermit C-kermitÊÇÒ»¿î¼¯³ÉÁËÍøÂçͨÐÅ¡¢´®¿ÚͨÐŵŤ¾ß£¬ËüÓÐÈç϶àÖÖ¹¦ÄÜ
1.Ö§³ÖkermitÎļþ´«ÊäÐÒé
2.×Ô¶¨ÒåÁËÒ»Öֽű¾ÓïÑÔ£¬ËüÇ¿´ó¶øÒ×ÓÚʹÓ㬿ÉÓÃÓÚ×Ô¶¯»¯¹¤×÷
3.ÎÞÂÛÊÇÍøÂçͨÐÅ£¬»¹ÊÇ´®¿ÚͨÐÅ£¬²Ù×÷ÊÇÒ»Öµģ¬²¢Ö§³Ö¶àÖÖÓ²¼þ¡¢Èí¼þƽ̨
4.Óа²È«ÈÏÖ¤¡¢¼ÓÃܹ¦ÄÜ
5.ÄÚ½¨FTP¡¢HTTP¿Í»§¶Ë¹ ......