社区
Delphi
帖子详情
如何用Delphi写一个参数数目可变的函数
masterz
2001-08-16 12:00:46
就像int printf( const char *format [, argument]... );
可以使用任意数目的参数
...全文
306
12
打赏
收藏
如何用Delphi写一个参数数目可变的函数
就像int printf( const char *format [, argument]... ); 可以使用任意数目的参数
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
TechnoFantasy
2001-11-10
打赏
举报
回复
用array可以实现int printf( const char *format [, argument]... );这样功能的,例如:
procedure a1(a: integer; b: array of integer);
var
i:integer;
begin
showmessage('procedure begin');
for i:=low(b) to high(b) do
showmessage(inttostr(b[i]));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
a1(2,[3,4,5]);
a1(2,[]);
end;
子程序a1的参数b就是一个动态数组,在调用可以动态设定参数。
masterz
2001-11-10
打赏
举报
回复
int wsprintf(
LPTSTR lpOut, // output buffer
LPCTSTR lpFmt, // format-control string
... // optional arguments
);
这个SDK函数参数个数可变的
masterz
2001-11-10
打赏
举报
回复
...
chechy
2001-08-17
打赏
举报
回复
如果用重载,那不是要写累死了。printf可不是重载实现的。
windfantasy
2001-08-17
打赏
举报
回复
对,用函数重载来实现!
kevin_gao
2001-08-16
打赏
举报
回复
同意highroad(流冰)
highroad
2001-08-16
打赏
举报
回复
用超载吧,多写几个函数,名字一样,参数不一样就可以了。
cszhz
2001-08-16
打赏
举报
回复
知道c中main函数的实现吗?
chechy
2001-08-16
打赏
举报
回复
补充一点,参数中array of Integer等等地东西不是动态数组。应该是Open Array Arguments。
动态数组是D4才提出的,而Open Array从D1开始就有了。最好的例子就是Format函数(类似于C地printf)。
nne998
2001-08-16
打赏
举报
回复
function yourfunc(szSs:TStrings):string;
var
tmp:string;
i:integer;
begin
result:='';
for i:=0 to szSs.count-1 do
tmp:=tmp + szSs.strings[i];
result:=tmp;
end;
chechy
2001-08-16
打赏
举报
回复
访问其中的内容就是靠
High(a), Low(a)
windindance
2001-08-16
打赏
举报
回复
不直接支持吧。
可以使用动态数组:
procedure func(a:array of Variant);
delphi
与变长
参数
——开放数组(1)
与C/C++不同,
Delphi
中是通过
可变
类型(TVarRec)的开放数组来指定变长
参数
的。其实这里已经不能称“变长
参数
”了,因为实际上只传递了
一个
参数
,只是该
参数
是由多个基础类型数据构成的
一个
开放数组。
Delphi
使用开放数组来容纳不定
数目
的
参数
,使用
可变
类型(TVarRec)表示各种类型数据,因此二者的结合可以达到C/C++中变长
参数
的功能。 TVarRec是
一个
记录类型,该记
delphi
常用
函数
大全
delphi
常用
函数
大全
C# params传递多个
参数
C#开发语言中 params 是关键字,可以指定在
参数
数目
可变
处采用
参数
的方法
参数
。在
函数
的
参数
数目
可变
而执行的代码差异很小的时候很有用! params关键字表示
函数
的
参数
是
可变
个数的,即
可变
的方法
参数
,例如Console.WriteLine( "{0},{1} ",i,j); 就像
DELPHI
里 WRITELN
函数
一样,用于表示类型相同,但
参数
数量不确定. 在方法声明中的
Delphi
语法(四)
函数
和过程
Delphi
语法 第五章
函数
和过程 例程
params
C#开发语言中 params 是关键字,可以指定在
参数
数目
可变
处采用
参数
的方法
参数
。在
函数
的
参数
数目
可变
而执行的代码差异很小的时候很有用! params关键字表示
函数
的
参数
是
可变
个数的,即
可变
的方法
参数
,例如Console.WriteLine( "{0},{1} ",i,j); 就像
DELPHI
里 WRITELN
函数
一样,用于表示类型相同,但
参数
数量不确定. ...
Delphi
5,927
社区成员
262,932
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章