C++和Lua从USB。
大约两周前,我开始学习 C++ 和 Lua,并希望能够:
- 编译 C++ 代码(如果能够拥有 C 编译器,那将是一个很好的奖励,因为它是我接下来要学习的语言之一)。
- 解释(这个术语是否正确?)Lua,并且
- 所有这些都在我的 USB 驱动器上完成,而不需要从互联网下载任何东西或更改路径变量。(我主要会在学校电脑上工作。)
顺便说一下,我已经爱上了 Sublime Text 2(它的便携式版本已经在我的 USB 驱动器上)。如果绝对必要,我可以不使用它,但我更喜欢能够无论走到哪里都能使用它。
请耐心等待我,正如我之前提到的,我刚开始学习编程,并且对事物的运作知之甚少。我看到过类似的问题,但由于我的知识有限,它们似乎都没有什么帮助,因此不要像其他我在这个网站上看到的问题那样无情地关闭我的问题。
提前致谢!
Lua 很简单。下载二进制文件,将其放入驱动器中,并配置 Sublime Text,在 Lua 文件上调用它们。
C/C++更加复杂,只是因为选项范围太广泛了。我使用2003版的Microsoft Visual C++,它满足了我的需求。我在这里找到了一份拷贝:链接。
请记住,C++是C的非严格超集,因此在学习C++的过程中,你将学习大部分的C。在我的看法中,先学习C有很多好处。你会听到有些人持相反意见,但在这种情况下,有一个关键因素:Lua是用C编写的,其API是为C设计的。将惯用的C++(即对象)暴露给Lua是一个非常复杂的过程,而且你现在不需要学习两种语言。
对于 C/C++ 部分,我建议你从 C 开始学起。不是出于意识形态上的原因,而是因为如果你正在尝试理解编译/链接等基础内容,C 语言要简单得多。
作为第一个 C 编译器,我推荐小型 C 编译器 Tiny C Compiler。
它是我见过最容易理解的编译器之一,你仍然可以构建 Lua 库等。
一旦你对此感到舒适,那么进一步学习更强大的环境,例如 MingW 下的 gcc 或 Visual C++,应该会变得不那么令人生畏。
我最近在 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++ 都不是最合适的语言(它们有许多陷阱,对于初学者几乎没有“安全网”)。但这取决于你的技能、投入和动力 ;-)
希望所有这些都能帮助到您。
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
对于 Windows,
可以参考
http://nuwen.net/mingw.html
你可以将下载文件夹解压到一个 USB 目录中。然后你可以点击 .bat 文件,打开一个正确路径设置的命令提示符。
作为额外奖励,它已经包括了预编译的 boost,这将让你的 C++ 使用更加容易。