C++和Lua从USB。

大约两周前,我开始学习 C++ 和 Lua,并希望能够:

  1. 编译 C++ 代码(如果能够拥有 C 编译器,那将是一个很好的奖励,因为它是我接下来要学习的语言之一)。
  2. 解释(这个术语是否正确?)Lua,并且
  3. 所有这些都在我的 USB 驱动器上完成,而不需要从互联网下载任何东西或更改路径变量。(我主要会在学校电脑上工作。)

顺便说一下,我已经爱上了 Sublime Text 2(它的便携式版本已经在我的 USB 驱动器上)。如果绝对必要,我可以不使用它,但我更喜欢能够无论走到哪里都能使用它。

请耐心等待我,正如我之前提到的,我刚开始学习编程,并且对事物的运作知之甚少。我看到过类似的问题,但由于我的知识有限,它们似乎都没有什么帮助,因此不要像其他我在这个网站上看到的问题那样无情地关闭我的问题。

提前致谢!

点赞
用户1858436
用户1858436

对于 Windows,

可以参考

http://nuwen.net/mingw.html

你可以将下载文件夹解压到一个 USB 目录中。然后你可以点击 .bat 文件,打开一个正确路径设置的命令提示符。

作为额外奖励,它已经包括了预编译的 boost,这将让你的 C++ 使用更加容易。

2013-08-16 19:52:08
用户501459
用户501459

Lua 很简单。下载二进制文件,将其放入驱动器中,并配置 Sublime Text,在 Lua 文件上调用它们。

C/C++更加复杂,只是因为选项范围太广泛了。我使用2003版的Microsoft Visual C++,它满足了我的需求。我在这里找到了一份拷贝:链接

请记住,C++是C的非严格超集,因此在学习C++的过程中,你将学习大部分的C。在我的看法中,先学习C有很多好处。你会听到有些人持相反意见,但在这种情况下,有一个关键因素:Lua是用C编写的,其API是为C设计的。将惯用的C++(即对象)暴露给Lua是一个非常复杂的过程,而且你现在不需要学习两种语言。

2013-08-16 21:26:11
用户2279620
用户2279620

对于 C/C++ 部分,我建议你从 C 开始学起。不是出于意识形态上的原因,而是因为如果你正在尝试理解编译/链接等基础内容,C 语言要简单得多。

作为第一个 C 编译器,我推荐小型 C 编译器 Tiny C Compiler

它是我见过最容易理解的编译器之一,你仍然可以构建 Lua 库等。

一旦你对此感到舒适,那么进一步学习更强大的环境,例如 MingW 下的 gcc 或 Visual C++,应该会变得不那么令人生畏。

2013-08-17 13:32:45
用户2633423
用户2633423

我最近在 Lua WIKI(一个伟大的信息来源)上添加了一个页面,可能会对你有帮助。这是一个针对完全初学者的教程,介绍了如何仅使用免费且“便携”(即“可以放在 USB 驱动器上”的意思)工具从源代码编译 Lua。它适用于 Windows 操作系统用户。不要忘记查看官方的入门页面主要的 Lua 网站

不能下载任何东西的事实是相当限制性的(那么你如何获得免费编译器呢?)。无论如何,正如 greatwolf 提到的那样,TDM-GCC 是一个非常好的 32 位 x86 PC 的 C/C++ 编译器。它也被补丁修补成完全“可移植”的:我通常使用它的便携式 USB 硬盘。我提到的教程展示了如何下载它并“安装”它。

请注意,尽管您在学校的系统管理员可能已经阻止您全局更改路径变量的能力,您可以使用简单的批处理文件(也称为 Windows 命令行脚本)为单个进程(“启动的程序”)设置它。

创建一个名为“myshell.cmd”的文件,并使用以下内容:

@set path=%path%;c:\the\path\to\my\app&cmd /K

其中 c:\the\path\to\my\app 必须是将应用程序可执行文件放置的目录(文件夹)的实际路径。当您双击 myshell.cmd 时,会打开一个黑色小窗口(假设您的系统管理员没有阻止此功能),您可以在其中调用应用程序可执行文件。

例如,如果您在 c:\myprogs\GCC 中“安装”了 TDM_GCC 编译器,那么您将在该目录中找到名为 bin 的子目录。该子目录必须放在路径中,因此您的 myshell.cmd 文件将如下所示:

@set path=%path%;c:\myprogs\GCC\bin&cmd /K

然后在我提到的“黑盒子”中,您可以键入以下内容来调用编译器:

gcc --help

至于你的学习路径,如果你打算学习 Lua、C 或 C++,我建议你尝试 C 而不是 C++。C++ 有更多的“高级”功能,但它非常庞大,尽管 Lua 可以用于嵌入在 C++ 代码中(当然这是一个高级话题),但它是设计直接嵌入在 C 应用程序中的(它有一个符合 C 约定的 API),所以对于初学者来说,Lua -> C -> C+Lua 的路径可能会更简单。C 本身虽然难以掌握,但它是一种相当简约的语言,因此要消化有关它的信息并不那么大。

不要阻止你,但我个人认为,对于绝对初学者来说,C 和 C++ 都不是最合适的语言(它们有许多陷阱,对于初学者几乎没有“安全网”)。但这取决于你的技能、投入和动力 ;-)

希望所有这些都能帮助到您。

2013-08-18 20:52:58