【问题标题】:What's the syntax for literal arrays in Free Pascal?Free Pascal 中文字数组的语法是什么?
【发布时间】:2011-12-09 18:43:55
【问题描述】:

我想将 50 多个硬编码字节列表存储在字节数组中,但我找不到 Free Pascal 的硬编码数组语法。

集合使用[elem, elem, elem],那么数组使用什么?

【问题讨论】:

  • 为什么不能用字符串呢?
  • 变量是一个静态密钥,由简单加密方案中使用的字节组成。一个字符串就足够了,但是 1) 密钥中的每个字节都必须被转义,并且 2) 使用字节数组会强化密钥实际上是一个 byre 数组的想法。

标签: arrays literals freepascal


【解决方案1】:

试试这个

Const
  MyArray : Array[0..3] of byte= (0,1,2,3);   

更新

你必须翻译这个

static int xlat[] = {
0x64, 0x73, 0x66, 0x64, 0x3b, 0x6b, 0x66, 0x6f,
0x41, 0x2c, 0x2e, 0x69, 0x79, 0x65, 0x77, 0x72,
0x6b, 0x6c, 0x64, 0x4a, 0x4b, 0x44, 0x48, 0x53,
0x55, 0x42, 0x73, 0x67, 0x76, 0x63, 0x61, 0x36,
0x39, 0x38, 0x33, 0x34, 0x6e, 0x63, 0x78, 0x76,
0x39, 0x38, 0x37, 0x33, 0x32, 0x35, 0x34, 0x6b,
0x3b, 0x66, 0x67, 0x38, 0x37
};

static int XLAT_SIZE = 53;

到这里

const
 XLAT_SIZE = 53;
 xlat : Array[0..XLAT_SIZE-1] of Integer = (
 $64, $73, $66, $64, $3b, $6b, $66, $6f,
 $41, $2c, $2e, $69, $79, $65, $77, $72,
 $6b, $6c, $64, $4a, $4b, $44, $48, $53,
 $55, $42, $73, $67, $76, $63, $61, $36,
 $39, $38, $33, $34, $6e, $63, $78, $76,
 $39, $38, $37, $33, $32, $35, $34, $6b,
 $3b, $66, $67, $38, $37
);

【讨论】:

  • 确切地说,密钥是xlat in ios7crypt.c。语法会一样吗?当我复制你的语法时,我得到Fatal: Syntax error, "," expected but ")" found
  • 如何连接两个字节数组?
  • 2.7.1 也支持Delphi compat dynarray.create 语法。
猜你喜欢
  • 1970-01-01
  • 2011-12-09
  • 1970-01-01
  • 2021-03-22
  • 1970-01-01
  • 1970-01-01
  • 2015-10-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多