2011-02-28 69 views
3

在C,我可以声明和初始化字符数组是这样的:移植C数组声明德尔福

char arg[10] = "ANY"; 

是否有任何短语法做同样在delphi?

+1

你不”通常在Delphi中使用C字符串正在做互动。你通常只使用Delphi字符串。你为什么要在Delphi中使用字符数组? – 2011-02-28 10:00:10

+0

听起来好像OP正试图将他对K&R C的知识转化为Delphi。 – 2011-03-01 17:46:59

回答

4

一个常数:

const 
    arg: array[0 .. 9] of AnsiChar = 'ANY'; 

一个局部变量:

var 
    arg: array[0 .. 9] of AnsiChar; 
... 
    arg := 'ANY'; 

一个全局变量:

var 
    arg: array[0 .. 9] of AnsiChar = 'ANY'; 
+0

奥普斯,我的错。它的工作原理,我用PAnsichar而不是Ansichar :) – cytrinox 2011-02-28 09:15:40

+0

人们应该意识到这段代码是故意创建一个AnsiChar数组,这将是一件不寻常的事情。在一个unicode delphi应用程序中,不需要将某个字符串'ANY'作为ansi,你通常会声明const arg ='ANY'。 (Unicode字符串常量)。 – 2011-03-01 17:46:11

-1

是这样的:

VAR ARG1:字符串= '任何';

VAR ARG2:堆积阵列[0..9]的炭= '任意';

如果你真的想要的阵列从索引0开始,如在C,或

VAR ARG3:PChar类型= '任意';

如果你想有一个\ 0结尾的字符串