2012-07-10 4 views
1

string.format ("% q", foo_str)은 적절한 이스케이프 문자를 추가하여 Lua 인터프리터로 다시 읽을 수 있도록 문자열 형식을 지정합니다. 이 함수를 사용하여 C-API에서 Lua_Buffer를 포맷하는 가장 좋은 방법은 무엇입니까? 더 일반적으로 C-API에서 문자열. * 함수에 액세스하려면 어떻게해야합니까? lua_pcall ("string.format", ...)을 사용할 수 있지만 더 직접적인 방법이 있는지 궁금 할 때가 있습니다.C-API에서 lua_Buffer를 "% q"포맷하는 방법

+0

직접적인 방법은 없습니다. – lhf

답변

2

format 함수는 lstrlib.c 모듈에서 정적으로 정의되었으므로 AFAIK를 사용하는 유일한 방법은 string 테이블을 사용하는 것입니다.

난 당신이 lstrlib.c에서 addquoted에서 모양과 당신의 사용을 위해 조정할 수 있지만, 아마도 쉽게 단지 string.format를 호출하는 가정합니다.