2

我正在将 GraphicEx 项目转换为 Delphi 2009。

我无法在单位Scanf_c.pas中转换以下程序。这是问题所在:

  With TscRec(FType) do begin

FType 是一个整数,定义了 TscRec:

  TscRec = packed record  // Has size of an integer
      Case byte of
        0: ( Typ : byte; Size : char; Flags : word;);
        1: ( SizeType : word; iFlags : smallInt;);
      end;

似乎这段代码在 delphi 2007 中运行良好,但我在 Delphi 2009 中编译它时遇到问题。编译器错误是“Invalid Typecase”。问题是由于将整数 FType 类型转换为记录的 TScRec 引起的。

这里有人对Delphi 2009有同样的问题并有解决方案。

谢谢

4

1 回答 1

12

“char”现在是 2 字节数据类型。如果将声明更改为“ansichar”会发生什么?(这相当于 Delphi <= 2007 中的“char”)。

于 2009-09-22T08:14:36.197 回答