各位大牛,我写了如下语句:...
var
  a,b,c : TDatetime ;
begin
  b := Now ;
  c := b + 10 ;
  for a := b to c do
  begin
  ;
  end;
...但无法运行,给出以下提示信息:
[Error] u_MRP.pas(188): For loop control variable must have ordinal type急救!SOS!

解决方案 »

  1.   

    把for语句改为:
       for strtoint(formatdatetime('dd',b)) 
             to strtoint(formatdatetime('dd',c))  do或 for 1 to 10 do    程序运行也同上面是一样的
      

  2.   

    var i:integerfor i:=0 to 10
      

  3.   

    for datetoint(b) to datetoint(c) do
    日期类型本来就是浮点型。
      

  4.   

    var
      a,b,c : TDatetime ;
    begin
      b := Now ;
      c := incday(b,10) ;这个函数我记不清,但是日期增加一定用这个。
      a := now;
      while a < c do
      begin
        do something
        a := incday(a,1);
      end;
      

  5.   

    用IN 试试 while in do (不记得是哪个语言的)
      

  6.   

    谢谢各位!tfxg(tfxg) :datetoint()这个函数在Delphi中好像没有啊!?     :)
    idilent() :你的方法对我有启发,谢谢!谢谢各位!