在lua中,通常我們用lual_openlibs(l)載入所有的lub標準庫,但是有時候我們想只載入部分,有沒有什麼好的辦法呢?在luaproc看到如下辦法:
static void registerlib( lua_state *l, const char *name, lua_cfunction f )static void openlibs( lua_state *l )
int lua_cpcall (lua_state *l, lua_cfunction func, void *ud);calls the c function
func
in protected mode.func
starts with only one element in its stack, a light userdata containingud
. in case of errors,lua_cpcall
returns the same error codes aslua_pcall
, plus the error object on the top of the stack; otherwise, it returns zero, and does not change the stack. all values returned byfunc
are discarded.
上面是5.1的做法。luaproc新做法如下:
static void luaproc_reglualib( lua_state *l, const char *name,lua_cfunction f )
static void luaproc_openlualibs( lua_state *l )
實現部分庫函式
1.模擬實現strncat 與strcat無異,只是追加的塊大小不一樣,strncat只是向後追加n個位元組的內容 char my strncat char dst,const char src,int count while count 用數count控制迴圈的次數 dst src dst 0 r...
部分庫函式原始碼
部分庫函式原始碼 char strcpy char strdes,const char strsrc return s t char strcat char strdes,const char strsrc 注意 1.不能向形參傳遞指向字串常量的指標 本題中dst和src都是指向串常量的指標,字串常...
string部分庫函式的實現
1 模擬實現strcpy 思路分析 源字串的字元逐個賦值給目標字串 如下 include include char my strcpy char dest,const char src return ret int main my strcpy arr2,arr1 printf 拷貝完成後的字串 s...