问题标签 [freepascal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
110 浏览

compilation - 我们可以在编译条件上使用 >(大于)或 <(小于)与 Free Pascal 上的版本号吗

我已经看到了带有与编译版本相关的表达式的条件编译指令,但我无法再次找到它们。

我如何在 Free Pascal 中正确地写这个?

谢谢。

0 投票
2 回答
716 浏览

recursion - 帕斯卡范围超出

所以我收到范围超限错误,我看不到我真正超出范围的地方。我试图用这个函数做的是尝试在等于 b 的 N 长度数组中找到 c 元素的总和。请帮我。

0 投票
2 回答
619 浏览

delphi - const 参数和类型转换在 Delphi 64 位下会像以前一样工作吗?

作为一般规则,我在使用指针时通过利用常量(无类型)参数而不是硬编码类型来规避许多经典设计陷阱。这给了我在执行高级图形功能时速度的好处,同时将技术细节留给编译器。它还使得在 Delphi 和 Free Pascal 中使用相同的代码变得很容易,只需进行最小的更改。然而,最近,由于 Embarcadero 对 Delphi 的演变及其即将推出的安全模型的模糊陈述,我开始质疑这一点。

例如,考虑以下示例:

我们现在有两个具有相同声明的过程,但它们处理像素数据的方式非常不同。这给了我们使用查找表来获得正确的“转换器”方法的好处。这应该在构造函数或分配图片位图的任何地方完成,如下所示:

每当我们需要转换像素时,我们只需查找正确的方法并使用它。所有过程的语法保持不变——所以我们不必担心每个过程“如何”运行。就我们班而言,它们看起来都一样。

问题是:这种类型转换(例如:Const to Byte 或任何已定义的 Record 类型)在 64 位下能否存活?我个人不明白为什么不这样做,但 Embarcadero 对新的“安全”模型和指针使用有点含糊,所以我发现在未来保护我的代码有点困难。

0 投票
1 回答
157 浏览

freepascal - 记录字段覆盖其他字段

我正在用Free Pascal为我的游戏编写一个SDL /input 库,但我遇到了一个问题。

我有一个变体记录,当我访问其中的一个元素时,它会更改其他元素。

记录类型为:

结尾;

崩溃的代码是:

当轴设置为一时,记录中的所有其他变量都变为一二!

这是一个已知的错误?或者一些我不知道的功能?还是我搞砸了什么?

0 投票
2 回答
524 浏览

android - Use ppcrossarm to cross compile to Android?

how can I use ppcrossarm to cross compile a Free Pascal file to Android?

0 投票
6 回答
10154 浏览

utf-8 - UTF-8 中的字符串到字节数组?

如何将 WideString(或其他长字符串)转换为 UTF-8 中的字节数组?

0 投票
3 回答
384 浏览

java - Java——freepascal通信

我在 java 和 freepascal(lazarus) 应用程序之间的通信有问题。我使用插座。它们正确连接。一切都很顺利,直到我想将一些东西从一个应用程序发送到另一个应用程序。在 java 而不是“abc”中,我有随机字符。继承人的代码:

爪哇:

FP:

0 投票
2 回答
456 浏览

windows - Lazarus 0.9.30 修剪的菜单条目

我正在使用 Lazarus 0.9.30,在 IDE 和示例应用程序中,菜单条目都被修剪:

替代文字 http://www.freeimagehosting.net/uploads/94832ba880.png

我可以在 IDE 中忍受这个,但是对于应用程序,我能做些什么吗?在标题末尾添加空格仅在设计器中解决了问题,在运行时标题仍然被修剪。

操作系统:Windows 7 x86

拉撒路版本尝试:

  • 拉撒路 0.9.30 + FPC 2.4.2
  • 拉撒路 0.9.31-29752 + FPC 2.4.2 (2011-03-09)
  • 拉撒路 0.9.31-29752 + FPC 2.4.3 (2011-03-09)

更新

将 Tahoma 8 用于系统菜单时会修剪菜单标题。将字体大小更改为 9 可以解决问题,但最好找到另一种解决方法。

0 投票
1 回答
219 浏览

pascal - 帕斯卡 - 神秘领域增加

我正在编写一个自定义结构操作程序,我有以下类型:

然后我有以下程序:

问题是,当我读入该类型的第二个对象时,pos变量以及长度字段神秘地增加了 1。以下代码

输出(当我在两种情况下输入“123”时):

如果有人为我清除情况,将非常高兴。先感谢您。

0 投票
3 回答
3599 浏览

freepascal - Free Pascal 有办法实现 SHA256 或 SHA512 吗?

在 Free Pascal 库中,有一个哈希库可以使用 MD5 和 SHA1 哈希算法 (http://wiki.freepascal.org/hash)。但是,如果我想使用更高的值,例如 SHA256 或 SHA512,该怎么办?我可以使用 Free Pascal 实现这一目标吗?搜索 FP Wiki 返回 SHA256\SHA512 的零命中。