小编Pwr*_*r87的帖子

以交互模式打开Lua文件

我开始自学Lua,基本上没有先前的编程知识.我理解类型,函数,表等的基础知识.但是在Lua.org上关注Lua tuts时,我目前正在使用"模块教程",并且在理解调用文件的正确/最简单方法时遇到了问题.互动模式.

如果我使用Notepad ++或Scite创建文件,有人可以帮我理解如何使用正确的命名法打开所述文件吗?

lua interactive-mode lua-loadfile

4
推荐指数
1
解决办法
2175
查看次数

Lua:String.match与String.gmatch?

我同时拥有“ 5.1参考手册”和“在Lua中编程:第三版”。在我前面。阅读这些内容以及网络上的大量搜索内容,在使用string.match和时仍然让我有些困惑string.gmatch

我知道它们都用于定位模式。

这是他们在“参考手册”中用于string.gmatch的示例:

s = "hello world from Lua"
for w in string.gmatch (s, "%a+") do
    print(w)
end
Run Code Online (Sandbox Code Playgroud)

我知道这将遍历所有单词s并每行打印一个单词。

这是他们在“ Lua编程”一书中使用的示例string.match

date = "Today is 17/7/1990"
d = string.match(date, "%d+/%d+/%d+")
print(d) -- prints 17/7/1990
Run Code Online (Sandbox Code Playgroud)

我感到困惑的是,什么时候应该适当使用一个?

例如,您有要解析的代码,其中包含数十遍相同的模式。此模式包含您需要的变量,哪个是更好的选择?下面的示例代码(x都是与其他行不同的变量数据。数据可以是您不需要关心的任何垃圾,而仅仅是杂讯):

Header contains variable (HERE) and (HERE) I want.  
    data data data data data data data data 
    <Font Typeset:xxxx Font Color:xxx Font Xpos:xxx Font Ypos:xxx Font Bold:X Font Uline:X Font Italic:X Font Text:XXXXXXXXX>
    data data data …
Run Code Online (Sandbox Code Playgroud)

string lua string-matching

4
推荐指数
1
解决办法
1万
查看次数

Lua中双冒号的目的是什么?

我知道Lua的5.3版本是在不久前发布的,但是直到现在还没有理由在线访问该文档。我可能是错的,但是我不记得要记住双冒号的用法,因为::它在那里使用得非常广泛。

我看到它被视为“特殊标记”,就像其他标记一样(大于,小于星号等),但我知道这些标记的用途。

在Lua中使用它们的目的是什么?

lua goto special-characters colon

4
推荐指数
1
解决办法
1142
查看次数

在编译程序上没有使用 GDB 的符号表

让我先说明这是我的第一个 C 编程课程的项目。我不打算提供我的代码,因为它正在工作,但只需要帮助我在执行期间从 GDB 收到错误。

话虽如此,我项目的第一部分是编写一个程序,该程序将采用字节形式的任何文件,并定位特定长度的字符串。这有效。下一部分是我提供 (3) 编译的 C 文件,我需要使用 GDB 以及十六进制编辑器和我的程序来找出解锁程序的隐藏密码。我得到了第一个,但第二个和第三个难度越来越大,我无法弄清楚我做错了什么。

这是我的问题:

当我使用 GDB 开始运行编译文件时,我立即遇到 GDB 中闪烁的光标。我按下cntrl c以中断程序,该程序在其轨道中暂停程序。然后我输入back并获取 (9) 行的列表、它们的内存位置以及它们的方法名称。这就是我的问题所在,如果我想去main(),并且我尝试进入休息,它会告诉我No symbol table is loaded. Use the "file" command

Starting program: [program path on university server] 
^C
Program received signal SIGINT, Interrupt.
0x00110430 in __kernel_vsyscall ()
Missing separate debuginfos, use: debuginfo-install glibc-2.12-
1.132.el6_5.3.i686
(gdb) list
No symbol table is loaded.  Use the "file" command.
(gdb) back
#0  0x00110430 in __kernel_vsyscall ()
#1 …
Run Code Online (Sandbox Code Playgroud)

c gdb list break

2
推荐指数
1
解决办法
5336
查看次数

Lua中的table.sort:不明白这个代码?

  -- original table
  t = {
    Steve = 20,
    Mary = 32,
    Tim = 15
  }

  --second table to help sort t{}    
  a = {}
  for n in pairs(t) do
    a[#a + 1] = n -- I do not completely understand this line.  
                  -- I know [#a + 1] is the iterator, but 
                  -- not a[#a + 1] and why equal that to "n"?
  end
  table.sort(a)
  for _, n in ipairs(a) do -- I do not understand the point of …
Run Code Online (Sandbox Code Playgroud)

sorting lua lua-table

1
推荐指数
1
解决办法
932
查看次数