luaºÍC½»»¥¿ò¼Ü
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Öеĺ¯ÊýµÄ£¬Ê×ÏȰѺ¯Êý²ÎÊýת»¯³ÉÏëÒªµÄÀàÐÍ£¬È»ºó°Ñ·µ»ØÖµ±í´ïʽѹ
Ïà¹ØÎĵµ£º
¹ØÓÚcµÄ¶¯Ì¬ÄÚ´æ¹ÜÀíÒ»Ö±ÊǸö¾¾Ã²»Ë¥µÄ»°Ìâ,ÃæÊÔÒ²ÊÇ»ù±¾É϶¼»á¿¼µÄ,±¾À´¸Ð¾õÒѾÃ÷°×ÁË,µ«ÊǽñÌìʹÓõÄʱºòÒ»²»Ð¡Ðĵ¼Ö³ÌÐò±ÀÀ£ÁË,Òò´ËÉîÈëµÄÈ¥²éÁËÏÂ×ÊÁÏ,ÊÕ»ñ²»ÉÙ...Ìù³öÀ´Óë´ó¼Ò·ÖÏí...
ÏÈÌù¸ö´íÎó´úÂë:
int * ptr = (int *)mal ......
extern "C"
¡¡¡¡extern "C" °üº¬Ë«Öغ¬Ò壬´Ó×ÖÃæÉϼ´¿ÉµÃµ½£ºÊ×ÏÈ£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“extern”µÄ£»Æä´Î£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“C”µÄ¡£ÈÃÎÒÃÇÀ´Ïêϸ½â¶ÁÕâÁ½Öغ¬Òå¡£
¡¡¡¡£¨1£© ±»extern "C"ÏÞ¶¨µÄº¯Êý»ò±äÁ¿ÊÇexternÀàÐ͵ģ»
¡¡¡¡externÊÇC/C++ÓïÑÔÖбí ......
1.ÅÅÐòС³ÌÐò£ºÁ·Ï°ÅÅÐò»ù±¾Ëã·¨ºÍº¯ÊýµÄÓ¦Ó㬲¢Ìåζº¯ÊýÓ÷¨µÄºÃ´¦¡£
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define DATA 10
int ArrGrounp[ DATA ];
int ArrGrounp1[DATA];
#define DEFINE1 "ÇëÊäÈë10¸öÊý£º\n"
#define DEFINE2 "Âú×ãÌõ¼þµÄÊýÓУº"
#define DEFINE3 "\nÂú×ãÌõ¼þ ......
¸ßÖÊÁ¿C++±à³Ì Note
¶¨Òå1£ºÄܳ¤ÆÚÎȶ¨µØ±àд³ö¸ßÖÊÁ¿³ÌÐòµÄ³ÌÐòÔ±³ÆÎª±à³ÌÀÏÊÖ¡£
¶¨Òå2£ºÄܳ¤ÆÚÎȶ¨µØ±àд³ö¸ßÄѶȡ¢¸ßÖÊÁ¿³ÌÐòµÄ³ÌÐòÔ±³ÆÎª±à³Ì¸ßÊÖ¡£
°æÈ¨ºÍ°æ±¾µÄÉùÃ÷λÓÚÍ·ÎļþºÍ¶¨ÒåÎļþµÄ¿ªÍ· £¬Ö÷ÒªÄÚÈÝÓУº
£¨1£©°æÈ¨ÐÅÏ¢¡£
£¨2£©ÎļþÃû³Æ£¬±êʶ·û£¬ÕªÒª¡£
£¨3£©µ±Ç°°æ±¾ºÅ£¬×÷Õß/ÐÞ¸ÄÕߣ¬Íê³ÉÈÕÆÚ¡£
......
linuxÏÂÃæ´®¿Ú¹¤¾ßC-kermit C-kermitÊÇÒ»¿î¼¯³ÉÁËÍøÂçͨÐÅ¡¢´®¿ÚͨÐŵŤ¾ß£¬ËüÓÐÈç϶àÖÖ¹¦ÄÜ
1.Ö§³ÖkermitÎļþ´«ÊäÐÒé
2.×Ô¶¨ÒåÁËÒ»Öֽű¾ÓïÑÔ£¬ËüÇ¿´ó¶øÒ×ÓÚʹÓ㬿ÉÓÃÓÚ×Ô¶¯»¯¹¤×÷
3.ÎÞÂÛÊÇÍøÂçͨÐÅ£¬»¹ÊÇ´®¿ÚͨÐÅ£¬²Ù×÷ÊÇÒ»Öµģ¬²¢Ö§³Ö¶àÖÖÓ²¼þ¡¢Èí¼þƽ̨
4.Óа²È«ÈÏÖ¤¡¢¼ÓÃܹ¦ÄÜ
5.ÄÚ½¨FTP¡¢HTTP¿Í»§¶Ë¹ ......