Тема: lua_pushstring - что делает ?
Позвольте задать вопрос.
Читаю описание к Push-функциям: [url]https://www.lua.org/pil/24.2.1.html[/url]
Push-функции помещают значение в некий виртуальный стек.
Но меня интересует вопрос немного другой.
Почему, когда при запуске скрипта Quik Lua:
Quil_Lua_connector = require("Quil_Lua_connector")
message(Quil_Lua_connector.TestFunc())
вызывается функция из Си:
static int forLua_TestFunc(lua_State* L)
{
lua_pushstring(L, "Привет из C/C++");
return(1);
}
То результатом является появление инфобокса в Quik`е c надписью "Привет из C/C++" - ведь возвращенное значение 0 это int "return 1" - то есть message(1) - почему выводится текст, который как бы был помещен в стек.