我简单的说下程序部分   
我定义了一个字符串数组
   nachange:array[0..20] of string;
....
var i,j:string;
....
   j:=0;
   for i:=0 to 30 do
   
   if b[i]='na'then
     
   begin
      nachang[j]:=b[i];(b[i]:string)
      inc(j)
   end;
测试发现数组元素的值为空。

解决方案 »

  1.   

      INC(j)不是在循环中吗 nachange[0]也是空值
      

  2.   

    是不是根本就不满足b[i]= 'na ' 啊?
    或者b数组根本没有相应的值,或者是你忘了去空格  Trim(b[i])= 'na ' 
      

  3.   

    b[i]= 'na ' 这里错了吧b[i] 只有一个字符, 而 'na ' 不止一个字符
      

  4.   

     嗯 bi[i]是DBgrid的单元格内容。里面有NA值这个选项、、IF 后面其他的语句都能执行。。
     谢谢大家。。来CSDN混成长很快
      

  5.   

      begin 
        showmessage(cells[4,i]);    // <---这里检查 
        if cells[4,i]='NA' then 
        begin 
          str:=cells[1,i]; 
          showmessage(cells[1,i]);    // <---这里检查 
    ...