标签: pascal

帕斯卡非法表达

它停止在第54和58行编译时出现错误'错误:非法表达'和'语法错误,; 期待,但ELSE分别找到了.我的线条位置错了吗?

Procedure PlayDiceGame(PlayerOneName, PlayerTwoName : String;
                           VirtualDiceGame : Boolean; Var TopScores : TTopScores);
      Var
        PlayerOut : Boolean;
        CurrentPlayerScore : Integer;
        AppealDieResult : Integer;
        PlayerNo : Integer;
        PlayerOneScore : Integer;
        PlayerTwoScore : Integer;
        BowlDieResult : Integer;
        RunsScored : Integer;
        NumberOfBalls : Integer;
      Begin
        For PlayerNo := 1 To 2
          Do
            Begin
            NumberOfBalls := 0;
              CurrentPlayerScore := 0;
              PlayerOut := False;
              If PlayerNo = 1
                Then Writeln(PlayerOneName, ' is batting')
                Else Writeln(PlayerTwoName, ' is batting');
              Writeln;
              Writeln('Press the Enter key to …
Run Code Online (Sandbox Code Playgroud)

pascal loops if-statement

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

在单元内调用单元

我试图在帕斯卡的一个单位内召唤一个单位.这可能吗?

我有一个单位RailFence和另一个单位fileHandlingRailfence

在fileHandlingRailfence中,我想使RailFence程序和函数可用,而无需复制和粘贴整个函数.但是,将其添加到我的Uses列表时出现错误.

uses
  SysUtils;
  railFence in 'RailFence.pas';
Run Code Online (Sandbox Code Playgroud)

我得到的错误是

[DCC Error] FileHandlingRailfence.pas(15): E2029 Declaration expected but identifier 'RailFence' found
[DCC Fatal Error] Proj_RailFence.dpr(7): F2063 Could not compile used unit 'FileHandlingRailfence.pas'
Run Code Online (Sandbox Code Playgroud)

关于这是否可能的任何想法?

delphi pascal

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

在delphi/lazarus中搜索已放入记录数组的记录

我有一个包含许多记录的数组。像这样设置:

Tcustomer= record
  Name: string[40];
  Address: string[100];
  phone: string[15];
  email:string[50]; 
end;
Run Code Online (Sandbox Code Playgroud)

现在,假设我想在这个数组中搜索具有特定姓名地址的人。我该怎么办?所以基本上搜索不仅仅是1个元素。(我可以专门搜索 1 个属性,但不能过滤超过 1 个)

附件是我的表单如何设置的图片,这将更详细地显示我所指的内容:

在此处输入图片说明

arrays delphi pascal record lazarus

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

Delphi E2029:需要声明但找到文件结尾 - 如何调试?

大家好,我出现了一个错误,我无法摆脱..

我在我的 delphi 代码中添加了 2 个自定义过程,我读到你可以点击crtl+shift+c自动生成函数,我做到了。

但是我现在的问题是我不需要自动生成的东西,这就是我在执行命令后删除它的原因。现在我的代码不再工作,因为我收到了这个错误:

应为 E2029 声明但已找到文件结尾

预期初始化,但在第 520 行(520:1)处收到文件结尾

如何修复我的代码?在文件末尾删除或添加“结尾”对我没有帮助。有没有办法找出我的代码中遗漏了什么?(我可以发布我的 delphi 代码,但它的 500 行长我认为这没有意义。

更新代码:

unit Benutzerverwaltung_U;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.ComCtrls,
  Vcl.StdCtrls,
  Vcl.WinXCtrls, Vcl.CheckLst, System.Actions, Vcl.ActnList, Vcl.Menus,
  System.StrUtils,
  Data.DB, Vcl.Grids, Vcl.DBGrids, Vcl.DBCtrls, FireDAC.Stan.Intf,
  FireDAC.Stan.Option, FireDAC.Stan.Param, FireDAC.Stan.Error, FireDAC.DatS,
  FireDAC.Phys.Intf, FireDAC.DApt.Intf, FireDAC.Comp.DataSet,
  FireDAC.Comp.Client;

type
  TForm1 = class(TForm)
Run Code Online (Sandbox Code Playgroud)

其他按钮等等...

    procedure SwapValues(var Zahl1, Zahl2: Integer); //new
    procedure SelectionSort(Sender: TObject);  // new
    procedure Button11Click(Sender: TObject); //new

  private
    { Private-Deklarationen } …
Run Code Online (Sandbox Code Playgroud)

delphi pascal vlc

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

Delphi Records - 创建一个指向它的指针

我正在尝试查看如何创建指向简单记录的指针。

我在发布之前搜索过类似的主题,但它很混乱。

我创建了 A & B 其中是实际的记录。然后我有一个变量 C,我想它只是一个“指向这条记录的指针”。我不希望 C 存储它自己的值,而只是一个指向 A 或 B 的指针。
但是每当 C 被读取/写入时,它实际上是被写入 A 或 B,无论 C 指向哪个。

换句话说,它就像一个指向对象的指针,但在我的情况下我不需要对象。

使用 Delphi 10.3 和 10.4(如果有任何区别),请突出显示。

下面的代码在第一个 ShowMessage 上导致访问冲突。

procedure TForm1.Button2Click(Sender: TObject);
type
  TMyRecord = record
    Field1 : integer;
  end;
var
  A : TMyRecord;
  B : TMyRecord;
  C : ^TMyRecord; // how to declare this as a pointer?
begin
  A.Field1 := 1;
  B.Field1 := 2;

  C^ := A;  // psuedo code to point to A
  A.Field1 := 3; …
Run Code Online (Sandbox Code Playgroud)

delphi pascal pointers record

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

位串 转十六进制值

我有一个像“10011011001”这样的字符串,我希望将该字符串转换为十六进制字符串,最好的方法是什么。

delphi binary hex pascal

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

使用查找表计算 CRC-6 GSM

我正在尝试计算 CRC-6 GSM,但结果是错误的(16 美元)。对于“123456789”,根据 https://reveng.sourceforge.io/crc-catalogue/all.htm#crc.cat.crc-6-gsm ,它应该返回 13 美元

var Table: array[0..255] of Byte = (
$3F, $10, $0E, $21, $32, $1D, $03, $2C, 
$25, $0A, $14, $3B, $28, $07, $19, $36, 
$0B, $24, $3A, $15, $06, $29, $37, $18, 
$11, $3E, $20, $0F, $1C, $33, $2D, $02, 
$38, $17, $09, $26, $35, $1A, $04, $2B, 
$22, $0D, $13, $3C, $2F, $00, $1E, $31, 
$0C, $23, $3D, $12, $01, $2E, $30, $1F, 
$16, $39, $27, $08, $1B, $34, $2A, $05, 
$31, …
Run Code Online (Sandbox Code Playgroud)

delphi pascal crc lazarus

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

FreePascal中的月份名称

输入:月份名称(1月/ 2月/ .../12月)

产量:季节(冬/春/夏/秋)

冬季:12月至2月

春天:3月 - 5月

夏季:6月 - 8月

秋天:9月 - 11月

我试过了:

Program Months;

var
  Month:String;

begin
  writeln('Insert month name:');
  readln(Month);

  if Month = 'March' or Month = 'April' or Month = 'May' then

    begin
    writeln(Month,' is Spring month');
    end

    ...
    etc   
    ...

end.
Run Code Online (Sandbox Code Playgroud)

但是这个程序没有用.

pascal freepascal

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

无法在Lazarus中创建TStream

它在这个简单的例子中失败了:

      procedure TForm1.Button1Click(Sender: TObject);
      var
        ts: TStream;
      begin
        ts.Create; //<---- fails here
        ts.Free;
      end;
Run Code Online (Sandbox Code Playgroud)

有错误:

Project project1 raised exception class 'External: SIGSEGV'.
At address 10000DB38
Run Code Online (Sandbox Code Playgroud)

pascal lazarus

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

Delphi程序向HTTP请求

我想使用Delphi程序进行HTTP请求.

我使用下面的代码,但我得到了一个名为"Undeclared identifier:TIdHTTP"的错误

我是Delphi的新手.

我请你帮帮我

function PostExample: string;
var
  lHTTP: TIdHTTP;
  lParamList: TStringList;
begin
  lParamList := TStringList.Create;
  lParamList.Add('id=1');

  lHTTP := TIdHTTP.Create;
  try
    Result := TIdHTTP.Post('http://192.168.1.247:8001/test/test_api/', lParamList);
  finally
    lHTTP.Free;
    lParamList.Free;
  end;
end;

Procedure http;
begin
PostExample();
end;
Run Code Online (Sandbox Code Playgroud)

delphi pascal httprequest

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

标签 统计

pascal ×10

delphi ×7

lazarus ×3

record ×2

arrays ×1

binary ×1

crc ×1

freepascal ×1

hex ×1

httprequest ×1

if-statement ×1

loops ×1

pointers ×1

vlc ×1