"Lua print r()"의 두 판 사이의 차이

3번째 줄: 3번째 줄:
;Lua print_r()
;Lua print_r()


<syntaxhighlight lang='lua' run>
function print_r(arr, lv)
    local str = ""
    local ind = ""
    if(lv == nil) then print(print_r(arr, 0)); return end
    for i = 1, lv do ind = ind .. "  " end
    for k,v in pairs(arr) do
        if type(v) == "table" then str = str..ind.."- "..k..":\n"..print_r(v, (lv + 1))
        else str = str..ind.."- "..k..": "..tostring(v).."\n" end
    end
    return str
end
print_r( {true, "a", 1, 2, {x=9, y="b", z={3.1,"x"}}} )
</syntaxhighlight>
<syntaxhighlight lang='lua' run>
<syntaxhighlight lang='lua' run>
function print_r(arr, lv)
function print_r(arr, lv)

2022년 5월 11일 (수) 11:36 판

1 개요

Lua print_r()
function print_r(arr, lv)
    local str = ""
    local ind = ""

    if(lv == nil) then print(print_r(arr, 0)); return end
    for i = 1, lv do ind = ind .. "  " end
    for k,v in pairs(arr) do
        if type(v) == "table" then str = str..ind.."- "..k..":\n"..print_r(v, (lv + 1))
        else str = str..ind.."- "..k..": "..tostring(v).."\n" end
    end
    return str
end

print_r( {true, "a", 1, 2, {x=9, y="b", z={3.1,"x"}}} )
function print_r(arr, lv)
    local str = ""
    local ind = ""

    if(lv == nil) then print('{\n'..print_r(arr, 0)..'}'); return end
    for i = 0, lv do ind = ind .. "  " end
    for k,v in pairs(arr) do
        if type(v) == "table" then str = str..ind..k..": {\n"..print_r(v, (lv + 1))..ind.."}\n"
        else str = str..ind..k..": "..tostring(v).."\n" end
    end
    return str
end

print_r( {true, "a", 1, 2, {x=9, y="b", z={3.1,"x"}}} )

2 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}